Ajax返回错误调用错误Ajax错误调用
Ajax return error to call error ajax error call
我有一个ajax函数更新我的数据库..该函数工作得很好,更新数据库后,我调用了我创建的successAlert()函数。但是现在我想在错误的情况下调用错误函数,但是在测试中故意打破代码,我仍然得到successAlert()。
Ajax/Javascript:
var share = "test"
var custid = "test"
$.ajax({
url: "assets/ajax/customer-rec.php",
type: "POST",
data: {UpdateAccount: "yes",custid: custid,share: share},
success: function(result){
successAlert()
},
error: function(result){
errorAlert()
}
});
PHP更新数据库
if (isset($_POST['UpdateAccount'])){
$custid = $_POST['custid'];
$share = $_POST['share'];
$query="UPDATE `users` SET `share_ord`='$share' WHERE id= $custid";
$stmt = mysql_query($query);
if($stmt === false){
return false
}
}
返回false不是错误。如果您想发送错误,请使用
之类的标头header('X-PHP-Response-Code: 404', true, 404);
你可以在success中调用同样的errorAlert()函数,这样
$.ajax({
url: "assets/ajax/customer-rec.php",
type: "POST",
data: {UpdateAccount: "yes",custid: custid,share: share},
success: function(result){
if(result === false){
errorAlert()
} else {
successAlert()
}
},
error: function(result){
errorAlert()
}
});
要获得错误,您需要从为您的请求提供服务的php函数返回状态码'404'。
当服务器返回一个表示错误的HTTP状态码时,error
回调被触发,因此您应该发送一个,例如HTTP 500
if($stmt === false){
header('HTTP/1.1 500 Server error');
}
查看HTTP状态码列表
.ajax()将调用成功方法,因为一旦您的请求被服务器成功处理,那么它将向客户端重新运行HTTP_OK,如果.ajax没有接收到HTTP_OK,那么它将调用错误。根据您的代码,它将调用success,因为url存在,并且服务器将向浏览器发送HTTP_OK。如果你想生成error:
,然后给出错误的url或断开互联网或简单地更改
if($stmt === false){
//If you want really generate some http error.
header('X-PHP-Response-Code: 500', true, 500);
exit(0);
//or else continue as per code
// return false;
}
在你的JS:
$.ajax({
url: "assets/ajax/customer-rec.php",
type: "POST",
data: {UpdateAccount: "yes",custid: custid,share: share},
success: function(result){
if(!result){
showErrorAlert()
} else {
showSuccessAlert()
}
},
error: function(result){
showErrorAlert()
}
});
相关文章:
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- JSON分析错误:Java中AJAX、Javascript和Servlet的意外EOF
- 错误405:向Java控制器(Ajax)发送JSON时找不到POST方法
- AJAX简单错误.XMLHttpRequest无法加载http://localhost/mpl/getPage.php.
- VB NET JQUERY AJAX上出现错误500
- 一个ajax循环有两个输出错误innerHTML
- Ajax更新面板随机错误'PRM_MissingPanel'
- 错误:Ajax未定义
- 错误:$.ajax 不是一个函数
- 如何修复此未定义的索引错误?Ajax 到 PHP
- JSONP - 触发器完成、成功、错误 Ajax 调用
- 错误:ajax 方法中的循环
- Jasmine,一个测试,多个ajax请求(错误:ajax已经被监视)
- 被迫处理一个&在XML文件中,试图解决解析错误$.ajax({..})
- 0x800a138a-JavaScript运行时错误:AJAX调用中需要函数
- 使用量角器spyOn()为jQuery ajax()导致错误"ajax()方法不存在"
- Ajax返回错误调用错误Ajax错误调用
- JQuery错误ajax完成回调触发
- 从控制台进行Ajax调用,得到错误$.Ajax不是函数()
- 类型错误Ajax后Flask Python