gpt4 book ai didi

php - PHP向JavaScript返回表单提交结果,区分成功与失败

转载 作者:行者123 更新时间:2023-11-28 13:54:45 27 4
gpt4 key购买 nike

jQuery:

$("#register-form").submit(function(event) {
event.preventDefault();
$.post("./register.php", {
username: $("#username").val(),
password: $("#password").val(),
passwordtwo: $("#passwordtwo").val(),
email: $("#email").val()
},
function(response) {
$("#errors").html(response);
$("#errors").slideDown("slow");
});
});

这完美地工作并显示我返回的错误。但如果表单通过了所有检查,我就会遇到问题。

if ($error) {
echo $error; // returns errors in form
} else {
// Password Hash & Salt functions are here
// sets a cookie to log them in here
header("Location: " . getenv("HTTP_REFERER")); // the problem
}

由于我当前的 jQuery 函数,响应将返回 HTTP_REFERER所以它会加载 <div id="errors"></div> 中的谁上一页我有。

如果通过了所有检查,是否有某种成功参数或某种方法可以执行其他操作?

最佳答案

在 PHP 部分使用 JSON

    if ($error) {
echo '{"error":"$error", "success":false}'; // returns errors in form
} else {
// Password Hash & Salt functions are here
// sets a cookie to log them in here

echo '{"error":"", "success":true}';
}

并修改 Javascript 来处理 json。

$("#register-form").submit(function(event) {
event.preventDefault();
$.post("./register.php", {
username: $("#username").val(),
password: $("#password").val(),
passwordtwo: $("#passwordtwo").val(),
email: $("#email").val()
},
function(response) {
if(!response.success) { alert("error:" + response.error);}
else { window.location.reload(); }
},
'json'
); // add json type
});

关于php - PHP向JavaScript返回表单提交结果,区分成功与失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8660988/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com