Php jquery ajax脚本已成功运行,但导致错误

Php jquery ajax脚本已成功运行,但导致错误,php,jquery,ajax,json,Php,Jquery,Ajax,Json,我有一个简单的脚本,它会不断导致错误,即使PHP脚本运行成功 PHP require('/connect.php'); //Has my $link variable if(isset($_POST['pass'])){ $user = $_POST['user']; $oldpass = md5(urldecode($_POST['op'])); $newpass = md5(urldecode($_POST['np'])); $q = "SELECT

我有一个简单的脚本,它会不断导致错误,即使PHP脚本运行成功

PHP

require('/connect.php');  //Has my $link variable


if(isset($_POST['pass'])){

    $user = $_POST['user'];
    $oldpass = md5(urldecode($_POST['op']));
    $newpass = md5(urldecode($_POST['np']));

    $q = "SELECT * FROM `nht_users` WHERE usr = '".$user."' AND pass = '".$oldpass."'";
    $r = mysqli_query($link,$q);
    $n = mysqli_num_rows($r);

    if( $n > 0){

        $u = "UPDATE `nht_users` SET pass = '".$newpass."' WHERE usr = '".$user."'";
        mysqli_query($link,$u);

    }

    else{

        echo json_encode('FALSE');

    }

}
JQuery

$('#pass-submit').click(function() {

        var npp = $('#npp').val(),
            np = $('#np').val(),
            data = $('#pass-form').serialize(),
            url = 'http://www.<?php echo DOMAIN; ?>/functions.php';

        if (npp == np) {
            $('#test').html(url);
            $.ajax({
                type: 'POST',
                url: url,
                data: 'pass=true&'+data,
                success: function(data){

                    $('#pass-form').slideUp(800);
                    $('.pass-true').fadeIn(800);

                },
                error: function(){

                    $('.pass-false').fadeIn(800);

                }
            });
        }
        else {
            $('.pass-check').fadeIn(800);
        }

    });
$(“#通过提交”)。单击(函数(){
var npp=$('#npp').val(),
np=$('#np').val(),
数据=$('#传递形式')。序列化(),
url='1〕http://www./functions.php';
如果(npp==np){
$('#test').html(url);
$.ajax({
键入:“POST”,
url:url,
数据:'pass=true&'+数据,
成功:功能(数据){
元("通过表格").slideUp(800);;
$('.pass true').fadeIn(800);
},
错误:函数(){
$('.pass false').fadeIn(800);
}
});
}
否则{
$('通过检查').fadeIn(800);
}
});
捕获错误

error: function(xhr, textStatus, errorThrown) {
    alert(xhr.responseText);
}

为了更好地了解您的响应中发生了什么,您可以尝试使用Chrome中的网络选项卡(点击F12)并运行您的流程。您应该看到您的ajax请求和响应已经完成。Internet Explorer也有类似的选项,但您需要告诉它显式监视网络。跟踪此类问题的另一个选项是安装一个桌面应用程序,如Fiddler2()


我已经在不同的级别上使用了这三种方法来查找我的AJAX请求没有按预期运行的原因。

您不应该从脚本发送标题吗?是浏览器控制台中的错误吗?抱歉,它执行AJAX错误回调。@tPlummer错误是因为在运行更新查询时没有回显任何内容,或者它发生在if检查中。我建议在整个php文件的关键位置添加一些
echo
语句,以帮助跟踪发生的情况。顺便说一句,在
UPDATE
语句中,似乎需要一个
WHERE
子句。如果我为此编程,则不会有响应文本。@tPlummer这意味着您的php不会返回任何内容。我的猜测是,您实际上得到了一个500错误(内部服务器错误),这表明是一个php错误。textStatus和error抛出的参数包含什么?