这段代码让我的头脑爆炸,因为我没有找到解释,我的jquery .ajax有这段代码:
$.ajax({
type: "POST",
url: "/xt/processtrivia.php",
data: "mail="+email,
success: function(r){
//alert(r); printed answer, its ok
//var xx = typeof r; it return a string...
var r1 = r;
if(r == "existe"){ //this part is failing for no reason :/ even if the value returned by the php file is correct
alert("email exists");
}
}
});
在我的processtrivia.php中是这段代码:
$mail = $_POST['mail'];
$sql ="select * from trivia where email='" .$mail ."'";
$rs = $modx->prepare($sql);
$rs->execute();
if($rq= $rs->fetch(PDO::FETCH_ASSOC)){
return "existe";
}
else{
return "noexiste";
}
只是查询数据库以检查是否存在电子邮件,php文件是正确的showind数据(existe或noexiste),所以它不是我的php文件,我的问题是成功的事情,即使电子邮件存在,它不会显示警告“电子邮件存在”消息。
希望你能帮助我们,这是我第一次做.ajax请求......
感谢
答案 0 :(得分:1)
更改
return "existe";
到
echo "existe";
答案 1 :(得分:0)
您的PHP代码必须打印/回显“existe”/“noexiste”字符串并且不返回它们,除非您向我们展示的代码片段位于正在打印的函数内。
if($rq= $rs->fetch(PDO::FETCH_ASSOC)){
print "existe";
}
else{
print "noexiste";
}