从PHP向Ajax返回True/False
在过去的一天中,我一直在尝试向Ajax返回真布尔值或假布尔值 过程:某人提交表单>发送到PHP文件>从PHP,检查所有内容是否正确。如果是,则返回true并回显“correct”>输出结果。在这种情况下,它必须回显正确。检查一下是真是假 问题是,它总是返回一个false。即使一切都是正确的。因此,当我的登录正确时,它将返回一个从PHP向Ajax返回True/False,php,ajax,Php,Ajax,在过去的一天中,我一直在尝试向Ajax返回真布尔值或假布尔值 过程:某人提交表单>发送到PHP文件>从PHP,检查所有内容是否正确。如果是,则返回true并回显“correct”>输出结果。在这种情况下,它必须回显正确。检查一下是真是假 问题是,它总是返回一个false。即使一切都是正确的。因此,当我的登录正确时,它将返回一个correct,正如我所期望的那样。但它不会返回一个真实的结果 我的表格: <form id="loginform" class="col s12" name="lo
correct
,正如我所期望的那样。但它不会返回一个真实的结果
我的表格:
<form id="loginform" class="col s12" name="loginform" method="post">
<div class="input-field col s12">
<i class="fas fa-user material-icons prefix"></i>
<input id="hn" type="text" class="validate" name="hn">
<label for="hn">Gebruikersnaam</label>
</div>
<div class="input-field col s12">
<i class="fas fa-key material-icons prefix"></i>
<input id="ww" type="password" class="validate" name="ww">
<label for="ww">Wachtwoord</label>
</div>
<button class="mui-btn mui-btn--raised mui-btn--primary" id="forminlog"><i class="fas fa-chevron-right"></i> Inloggen</button>
PHP:
从您的
登录()函数返回两件事:
- 信息
- 布尔值
因此,我建议您将数据输出为json字符串,如下所示:
在使用login()
函数之前,声明一个数组:
$response = [];
然后,在你所有的条件下。。。只需相应地设置msg
和success
,例如,如果登录正确:
$response["msg"] = "You're logged in buddy!";
$response["success"] = true;
在所有条件echo
结束时,将数组作为json字符串:
echo json_encode($response);
它将发送以下字符串:
{"msg":"You're logged in buddy!","success":true}
**确保echo
是该PHP文件中唯一的echo
现在在客户端,在success
回调中,它将是:
success: function(output) {
// Parse the string.
var json = JSON.parse(output);
swal(json.msg); // Sweet Alert...
if(json.success){
// something to do with the boolean true
} else {
// Something else
}
}
JS脚本对php代码中返回的值一无所知。JS脚本获取php代码的输出。在php代码中,而不是返回true,您应该编写echo true。这将通过javascript作为布尔值进行解析。我建议查看您的浏览器控制台,看看php调用的输出是什么。既然您想输出JSON,我很确定您不应该有echo“corrected gevens”代码>在它之前。@suraj谢谢,我在返回true之前删除了echo,并将其更改为echo true。工作汉克!;)享受定制的乐趣。。。您现在可以发送任意数量的信息。;)
{"msg":"You're logged in buddy!","success":true}
success: function(output) {
// Parse the string.
var json = JSON.parse(output);
swal(json.msg); // Sweet Alert...
if(json.success){
// something to do with the boolean true
} else {
// Something else
}
}