回复从PHP到javascript的响应

时间:2009-07-29 10:30:12

标签: php javascript post postback

我是表格和发布数据的新手......所以我不知道如何解决这个问题!

我有一个简单形式的php页面(第1页):

<form method="post" action="/page2.php">
<input type="search" value="E-Mail Address" size="30" name="email" />
<input type="submit" value="Find E-Mail" />
</form>

您如何注意到...此表单将'email'值发布到page2。在page2中有一个小脚本,可以在数据库中查找以检查电子邮件地址是否存在。

$email = $_POST['email'];

$resut = mysql_query("SELECT * FROM table WHERE email = $email");
.   
.
.
/* do something */
.
.
.

if($result){
    //post back yes
}
else{
   //post back no
}

我不知道如何在php中发回帖子!如何从javascript方法读取回发数据,该方法显示报告搜索结果的警报?

这只是我正在尝试做的一个例子,因为我的page2在回发之前做了一些其他的动作。

当我点击提交按钮时,我正在尝试为旋转指示器设置动画...这就是我需要回发到javascript方法的原因!因为javascript函数应该停止动画并使用搜索结果弹出警报!

非常感谢提前!

5 个答案:

答案 0 :(得分:6)

我建议你阅读AJAX

W3Schools上的

Here's a PHP example详细介绍了AJAX。

答案 1 :(得分:3)

您好我认为您可以通过两种方式处理它。

首先是提交表单,保存会话中的数据,检查电子邮件,重定向 返回表单并显示会话中的结果和数据。

session_start();

// store email in session to show it on form after validation
$_SESSION['email'] = $_POST['email'];   

// put your result in your session
if ($results) { 
    $_SESSION['result'] = 'fine';
    header(Location: 'yourform.php'); // redirect to your form
} 

现在在表单中添加一些PHP代码:

<?php 

session_start();

// check if result is fine, if yes do something..
if ($_SESSION['result'] == 'fine) {
    echo 'Email is fine..';
} else {
    echo 'Wrong Email..';
}

?> 

更多信息:Sessions & Forms

并将电子邮件值放回表单字段

<input type="search" 
 value="<?php echo $_SESSION['email']; ?>" 
 size="30" 
 name="email" />

请原谅我的英语,我知道这太可怕了;)

另一个ajax事情在我之前得到了一些答案!

答案 2 :(得分:1)

作为旁注,您绝对应该在SQL请求中使用它之前转义数据,以避免SQL injection

当您使用mysql_*函数时,可以使用其中一个函数完成:

答案 3 :(得分:0)

您无法在这种情况下发布,因为它是从服务器发送到客户端。有关POST的更多信息,请查看this article

要回答您的问题,您可能希望在完成查询后执行以下操作:

if(mysql_num_rows($result)){ //implies not 0
   $data = mysql_fetch_array($result);
   print_r($data);
}
else{
//no results found
echo "no results were found";
}

print_r函数只是打印查询将返回的所有结果,您可能希望使用某些html格式化它。 $ data只是一个可以打印单个元素的数组:

echo $data['email'];

我希望这有帮助!

答案 4 :(得分:0)

<?php 

echo“alert('Record Inserted');” 要么 echo“document.getElementByID('tagname')。innerHtml = $ result;” ?&GT;

OR 包括'您的Html文件名'