gpt4 book ai didi

PHP Ajax 成功

转载 作者:可可西里 更新时间:2023-11-01 00:03:09 26 4
gpt4 key购买 nike

我在 jquery 中对 php 脚本进行 ajax 调用。但是 php 脚本需要返回什么才能触发 ajax 中的成功/错误处理程序。所以这是 ajax:

$.ajax({
data: $this.serialize(),
type: "POST",
url: "/Scripts/script.php",
success: function() {
alert("script was successful");
},
error: function() {
alert("script was unsuccessful");
}
});

所以 php 脚本可以返回一些东西,例如:

return 0, 1
return true, false
return "true", "false"
echo "true", "false

哪个触发 ajax 成功/错误调用?

最佳答案

只要服务器端脚本发送 HTTP 状态代码 200,它就会始终触发 success 回调。回应根本不重要。只有状态码。在您展示的所有示例中,您正在发送 HTTP 状态代码 200 => 成功回调将始终触发。

您可以使用 http_response_code 将状态代码强制设置为不同于 200 的值功能。

作为替代方案,您可以让 PHP 脚本返回一些信息,然后在成功函数中测试脚本返回的值,以了解某些服务器端处理是否失败:

$.ajax({
data: $this.serialize(),
type: "POST",
url: "/Scripts/script.php",
success: function(result) {
if (result == 'true') {
alert("script was successful");
} else {
alert("script was unsuccessful");
}
},
error: function() {
alert("something very bad went wrong => there's a bug in the script");
}
});

现在您的脚本可以回显 truefalse

如果您想发送复杂的对象,您可以使用 json_encode 将它们作为 JSON 发送函数并使用 header 将 HTTP Content-Type header 设置为 application/json功能。

关于PHP Ajax 成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12996206/

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