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

时间:2013-07-18 16:40:23

标签: 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 * 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);
        }

    });

2 个答案:

答案 0 :(得分:0)

捕捉错误

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

答案 1 :(得分:0)

为了更好地了解您的回复中发生的情况,您可以尝试使用Chrome中的网络标签(点击F12)并运行您的流程。您应该看到您的ajax请求和响应通过。 Internet Explorer也有类似的选项,但您需要告诉它明确地观看网络。跟踪此类问题的另一个选择是安装Fiddler2(http://fiddler2.com/)等桌面应用程序。

我已经使用了所有这3个不同级别来查找我的AJAX请求未按预期运行的原因。