1

メールとパスワードでユーザーを検証するphpスクリプトがあります。無効な場合、スクリプトは「ログインできません」などのメッセージを返し、成功した場合は別のページに移動します。どうすればよいですか?

これが私のphpコードです:

if(isset($_POST['email'])&&isset($_POST['password'])){
    $email = $_POST['email'];
    $password = $_POST['password'];

    $result = userAuthentication($email,$password);

    if($result == false){
        echo 'Unable to login';
    }
    else if($result == true){
        header("location: success.php");
    }
}

ここに私のjsコードがあります:

$(function() {
    $("button").button();
    $("#clickme").click(function(){
        $.post("check.php", {
            "email": $("#txtEmail").val(),
            "password": $("#txtPassword").val()
        },
        function(msg){
            $(".message").html(msg);
        });
        return false;
    });
});
4

1 に答える 1

2

そのようにPHPからリダイレクトすることはできません。成功メッセージを返し、javascript からリダイレクトできます。

php:

if(isset($_POST['email'])&&isset($_POST['password'])){
    $email = $_POST['email'];
    $password = $_POST['password'];

    $result = userAuthentication($email,$password);

    if($result == false){
        echo 'Unable to login';
    }
    else if($result == true){
        echo 'success';
    }
}

JavaScript:

$(function() {
    $("button").button();
    $("#clickme").click(function(){
        $.post("check.php", {
            "email": $("#txtEmail").val(),
            "password": $("#txtPassword").val()
        },
        function(msg){
            $(".message").html(msg);
            if(msg == 'success'){
                window.location = 'success.php';
            }
        });
        return false;
    });
});
于 2012-09-21T08:10:58.353 に答える