Javascript Ajax返回调用错误Ajax错误调用

Javascript Ajax返回调用错误Ajax错误调用,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一个ajax函数,可以更新我的数据库。。该函数运行良好,在更新数据库后,我调用我创建的successAlert()函数。。但是现在我想在出现错误的情况下调用error函数,但是在故意中断代码的测试中,我仍然得到了successAlert() Ajax/Javascript: var share = "test" var custid = "test" $.ajax({ url: "assets/ajax/customer-rec.php",

我有一个ajax函数,可以更新我的数据库。。该函数运行良好,在更新数据库后,我调用我创建的successAlert()函数。。但是现在我想在出现错误的情况下调用error函数,但是在故意中断代码的测试中,我仍然得到了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);
您也可以在成功时调用相同的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()    
        }
    });

返回false不是错误。如果要发送错误,请使用如下标题

header('X-PHP-Response-Code: 404', true, 404);
您也可以在成功时调用相同的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”。

要获取错误,您需要从为您的请求提供服务的php函数返回状态代码“404”。

当服务器返回指示错误的HTTP状态代码时,将触发
错误
回调,因此,您应该发送一个,例如HTTP 500

if($stmt === false){
    header('HTTP/1.1 500 Server error');
}

请参见此处的状态代码当服务器返回指示错误的HTTP状态代码时,将触发
错误
回调,因此您应该发送一个,例如
HTTP 500

if($stmt === false){
    header('HTTP/1.1 500 Server error');
}
请参见此处的状态代码

.ajax()将调用success方法,因为一旦服务器成功处理您的请求,它将向客户端重新运行HTTP\u OK,如果.ajax未收到HTTP\u OK,则它将调用error。根据您的代码,它将调用success,因为url存在,服务器将向浏览器发送HTTP\U OK。 如果您想生成
错误:
,请给出错误的url,或断开internet连接,或干脆更改

在PHP中:

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()    
        }
    });  
.ajax()将调用success方法,因为一旦服务器成功处理您的请求,它将重新向客户端运行HTTP_OK,如果.ajax未收到HTTP_OK,它将调用error。根据您的代码,它将调用success,因为url存在,服务器将向浏览器发送HTTP\U OK。 如果您想生成
错误:
,请给出错误的url,或断开internet连接,或干脆更改

在PHP中:

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()    
        }
    });  

你是如何制造失败的?您是否重命名了“assets/ajax/customer-rec.php”?您是如何创建失败的?您是否重命名了“assets/ajax/customer-rec.php”?也值得一看也值得一看