Php if-else语句总是返回相同的值
我对PHP和ajax很陌生 Ajax返回数据==确定或数据==否取决于数据库中的电子邮件 但if-else块总是返回相同的值。它总是打印最后一个块,就像电子邮件可用一样!我找不到错误Php if-else语句总是返回相同的值,php,if-statement,Php,If Statement,我对PHP和ajax很陌生 Ajax返回数据==确定或数据==否取决于数据库中的电子邮件 但if-else块总是返回相同的值。它总是打印最后一个块,就像电子邮件可用一样!我找不到错误 $.ajax({ type: 'post', url: 'check_email.php', data: {email:email,}, success: callback});} functio
$.ajax({
type: 'post',
url: 'check_email.php',
data: {email:email,},
success: callback});}
function callback(data){
email_error = false;
$("#email_error").css("display","block");
if(data =="OK"){
$("#email_error").html("Email was already used!");
$("#email_error").css("color","#990000");
$("#email_error").show();
email_error = true;
}else{
$("#email_error").html("Email is available!");
$("#email_error").css("color","#F1F0D1");
$("#email_error").show();
email_error = false;
}
}
阿贾克斯
html
php
我在中得到了一个简单的解决方案,只是我用\r\nOK更改了OK
您是否尝试使用console.logdata检查值?谢谢,是的,我根据php返回值检查了它是否返回OK。但在if-else语句中,它总是打印最后一个块。我们需要查看您的check_email.php脚本。ifisset$_POST['email']{$email=$\u POST['email']$sql=选择来自用户的电子邮件,其中email='$email';$query=mysqli_query$con,$sql;如果mysqli_num_rows$query>0{echo OK;}否则{echo NO;}exit;}请附加console.logdata的结果好吗?你说可以或不可以,但这并没有发生。请将console.log结果粘贴到这里。有两件事一是语法错误,有时还完全给出所有条件,即使其他条件有帮助。。。它不应该,但在php中关闭标记后有时会留下空格?>也会导致此问题。$.ajax{type:'post',url:'check_email.php',数据:{email:email,},success:callback};}函数callbackdata{email\u error=false;$email\u error.cssdisplay,block;ifdata==OK{$email\u error.htmlEmail已被使用!;$email\u error.csscolor,990000;$email\u error.show;email\u error=true;}否则ifdata==NO{$email_error.htmlEmail可用!;$email_error.csscolor,F1F0D1;$email_error.show;email_error=false;}}}check_email.php ifisset$_POST['email']{$email=$_POST['email'];$sql=从email='$email'.$query mysqli_query$con,$sql;ifmysqli_num rows$query>0{echo OK;}其他{echo NO;}退出;}HTLM电子邮件:我已回滚了您的编辑,删除了指向您查找信息的链接。对您查找信息的位置给予赞扬是堆栈溢出的一部分。不这样做,视情况而定,会导致各种负面事件发生。如果您这样做,人们会更加尊重您诚实地说明您使用的解决方案来自何处。
var email = "example@example.com";
$.ajax(
{
type: 'post',
url: 'check_email.php',
data:
{
email: email,
},
success: callback
});
function callback(data)
{
email_error = false;
$("#email_error").css("display", "block");
if (data == "OK")
{
$("#email_error").html("Email was already used!");
$("#email_error").css("color", "#990000");
$("#email_error").show();
email_error = true;
}
else if(data =="NO")
{
$("#email_error").html("Email is available!");
$("#email_error").css("color", "#F1F0D1");
$("#email_error").show();
email_error = false;
}
}
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="check_email.js"></script>
<title></title>
</head>
<body>
<div id="email_error">
</body>
</html>
<?php
echo "NO";
?>
$.ajax({
type: 'post',
url: 'check_email.php',
data: {email:email,},
success: callback});}
function callback(data){
email_error = false;
$("#email_error").css("display","block");
if(data =="\r\nOK"){
$("#email_error").html("Email was already used!");
$("#email_error").css("color","#990000");
$("#email_error").show();
email_error = true;
}else{
$("#email_error").html("Email is available!");
$("#email_error").css("color","#F1F0D1");
$("#email_error").show();
email_error = false;
}
}