我不知道为什么我的成功功能不起作用。我的意思是,尽管它将JSON数据传递给PHP文件并更改密码。
// this is the id of the form
$("#password_form").submit(function(e) {
    e.preventDefault();
    $(".verify-user-loader").addClass("force-display-block");
    password = $("input#password-reset").val();
    url = 'reset-pass.php';
    $.ajax({
        type : 'POST',
        url : url,
        dataType : 'json',
        data : {
                cardnumber: <?php echo '\''.$cardnumber.'\''; ?>,
                act_token: <?php echo '\''.$activationToken.'\''; ?>,
                password: password
        },
        success : function(success){
            alert("success");
        },
        error : function(request, error) {
            console.log(arguments);
            alert(" Can't do because: " + error);
        }
    });
});此文件按预期工作,它使用POST数据更改密码。
reset-pass.php
include_once '/../login/user.class.php';
$activationToken = $_POST['act_token'];
$cardnumber = $_POST['cardnumber'];
$password = $_POST['password'];
$user = new User();
$verifyToken = $user->verifyToken( $activationToken, $cardnumber );
if ($verifyToken['status'] === true) {
    $tokenStatus = "inactive";
    $user->signUp( $cardnumber, $password );
    $user->changeTokenStatus( $cardnumber, $tokenStatus );
    $success = true;
    return $success;
}else{
    print_r($verifyToken);
}发布于 2017-07-06 11:18:43
您应该使用echo而不是return,因为当您不使用函数时,您应该使用echo。
所以代码将是
 echo true; // or you can write  echo $success = true;
 exit(); // exit is use to stop further processing of code.https://stackoverflow.com/questions/44947116
复制相似问题