0

[Keep Me Logged In]チェックボックスを使用してユーザーログインフォームを作成し、情報を処理するPHPファイルにJQueryを介して値を渡そうとしていますが、使用する正しいコードがわかりません。これが私がこれまでに得たものです:

var username=$("#username").val();
var password=$("#password").val();
var checkbox=$("#checkbox").val();

if(usernameok == true && passwordok == true)
{           
    $('.validation').html("Logging In").removeClass("error").addClass("success");
    jQuery.post("php/login.php", {
    username:username,
    password: password,
    checked: checked
    },  function(data, textStatus){
    if(data == 1){
        window.location.replace("home.php");
    }
    else{
        $('.validation').html("Wrong Password Given").removeClass("success").addClass("error");
    }
    });
}

次に、Login PHPページで、次のようにRequestを使用しています。

$username= mysql_real_escape_string($_REQUEST["username"]);
$password= md5(mysql_real_escape_string($_REQUEST["password"]));
$checkbox= mysql_real_escape_string($_REQUEST["checkbox"]);

ユーザー名とパスワードの値は問題ありませんが、チェックボックスを渡すのに問題があります。おそらくどこかに:checkedステートメントがあるはずだと理解していますが、どこに置くべきかわかりません。

ありがとう

4

2 に答える 2

0

チェックボックスがチェックされているかどうか(true / false)を確認する必要があり、その値を取得する必要はありません。次に、ajax 関数で正しい変数を使用して渡します。

var username = $("#username").val();
var password = $("#password").val();
var checkbox = $("#checkbox").is(':checked');

if(usernameok == true && passwordok == true)
{           
    $('.validation').html("Logging In").removeClass("error").addClass("success");
    jQuery.post("php/login.php", {
        username:username,
        password: password,
        checked: checkbox
    },  function(data, textStatus){
        if(data == 1){
            window.location.replace("home.php");
        }else{
            $('.validation').html("Wrong Password Given").removeClass("success").addClass("error");
        }
    });
}

一方、通常のフォーム送信ではるかに簡単にリダイレクトできるのに、とにかくリダイレ​​クトするだけであるのに、なぜ ajax を使用するのでしょうか。

于 2013-03-13T21:31:03.110 に答える
0
var checkbox = ( $("#checkbox").is(":checked") ) ? "checked" : "not checked";

これは省略形の if ステートメントです。通常の if ステートメントを好む場合は、次のようにします。

if( $("#checkbox").is(":checked") ){
    var checkbox = "checked";
} else {
    var checkbox = "not checked";
}
于 2013-03-13T21:34:48.980 に答える