我一直在尝试使用ajax提交表单。我已经可以在有错误时读取错误但在没有错误时我无法收到错误消息。请在下面找到我的php代码,然后是jquery代码,如下所示。
脚本边码
$error=[];
$message=[];
$name=isset($_POST["name"])?$_POST["name"]:"";
$email=isset($_POST["email"])?$database->cleaner($_POST["email"]):"";
$message=isset($_POST["message"])?$_POST["message"]:"";
if(empty($name)){
$error[]="Name required";
}
if(empty($email)){
$error[]="Email required";
}
if(empty($message)){
$error[]="Message required";
}
// sending back the errors
if(!empty($error)){
$errors=array("error"=>$error);
echo json_encode($errors);
}
/*returning processed data with a thank you message.*/
if(($name) && ($email)&& ($message)){
$query="insert into contact_messages(name,email,message)values('$name' ,'$email','$message')";
$result=$database->query($query);
if($result){
$message[]="thank you";
$m=array("message"=>$message);
echo json_encode($m);
}
}
的javascript
$(document).ready(function (){
$('form').submit(function (event){
event.preventDefault();
var formDetails=$(this).serialize();
$.post('page.php',formDetails,function(data){
var json=$.parseJSON(data);
if(json.error){
for(key in json){
var output=$("#man").css('display','block').append('<p>' + json[key] + '</p>');
}
}
else if(json.message){
for(key in json){
var output=$("#man").css('display','block').append('<p>' + json[key] + '</p>');
}
}
});
});
});