-2

因此,我提出的一个想法遇到了一个巨大的错误。所以我正在我的主要网站上做一个项目,我们需要在页面上放置一个正在工作的页面,yadayda,但我想添加让用户向我们发送电子邮件的功能,但是在我们收到该数据后,弹出对话框会显示..但这并不像我想要的那样工作。

所以我需要帮助的实际上是 PHP 和 JavaScript 事件,以使其确认消息和电子邮件已发送,然后显示对话框。有谁知道如何做到这一点?或者至少如何在用户执行某些操作后显示对话框,例如输入信息而不是单击按钮?如果有人可以提供帮助,我将非常感激!

4

1 回答 1

5

如果您使用 jQuery,您可以对服务器端脚本进行 AJAX 调用,并使用成功回调在客户端启动对话。

$.ajax({
  url: 'ajax/test.php',
  data: { name: "WeLikeThePandaz", email: "panda@gmail.com" },
  success: function(response) {
    if (response.status == "OK"){
      // Show dialog 
    }else{
      // Let the user know there were errors
      alert(response.error);
    }
  }
},'json');

这是使用该$.ajax方法的相关文档 -

http://api.jquery.com/jQuery.ajax/


然后,您的服务器端 PHP 代码ajax/test.php可以破译发送的数据并组装一个 json 对象以返回给 jQuery -

<?php
$err= '';
$name = sanitizeString($_POST['name']);
$email = sanitizeString($_POST['email']);
// note the sanitization of the strings before we insert them - always make sure
// to sanitize your data before insertion into your database.

// Insert data into database.
$result = mysql_query('INSERT INTO `user_table` VALUES...');
if (!$result) {
  $status = "FAIL";
  $err = mysql_error();
}else{
  $status = "OK";
} 

echo json_encode(array('error'=>$err,'status'=>$status)); // send the response
exit();

?>
于 2012-05-06T09:24:37.133 回答