AJAX を使用するログイン スクリプトがありますが、解決できないコードに問題があります。
コードは次のとおりです。
JS:
$(document).ready(function(){
$("#loginForm").submit(function(){
$("#report").removeClass().addClass('loader').html('Loading...').fadeIn(1000);
$.post("check_login.php",{ username:$('#signin_username').val(),password:$('#signin_pwd').val()},function(data){
console.log(data);
if(data == "TRUE"){
document.write(data);
console.log("YEP");
$("#report").fadeTo(200,1,function(){
$(this).html('Logging in.....').addClass('log').fadeTo(900,1,function(){
document.location='members/index.php';
});
});
}
else if(data == "FALSE"){
console.log("NOPE")
$("#report").fadeTo(200,1,function(){
$(this).html('Username or password error.').addClass('error').fadeTo(900,1);
});
}
});
return false;
});
$("#password").blur(function(){
$("#login_form").trigger('submit');
});
});
形:
<div id="login_form">
<h3>Login</h3>
<div id="signup_link">
<a href="signup/">Signup Now</a>
</div>
<div id="report"></div>
<form action="" method="post" id="loginForm">
<ul>
<li>
<label for="username">Email: </label>
<input type="text" id="signin_username" name="signin_username" required="required" />
</li>
<li>
<label for="pwd">Password: </label>
<input type="password" id ="signin_pwd" name="signin_pwd" required="required" />
</li>
<li>
<input type="submit" name="login" id="login" value="Login"/>
</li>
<li><a href="members/forgotPass.php" class="forgot_pass">Forgot Password</a></li>
</ul>
</form>
</div>
およびjsによって呼び出されるPHPファイル:
require_once 'members/classes/Membership.php';
# Make instance of membership class
$membership = new Membership();
$true = "FALSE";
$false = "FALSE";
if(!empty($_POST))
{
$username = $_POST['username'];
$pwd = $_POST['password'];
if($test = $membership->validate_user($username, $pwd))
echo $true;
else
echo $false;
}
else
{
echo "Details werent entered";
}
基本的に、php スクリプトが呼び出しているメソッドは、データベースをチェックして、ユーザーの詳細が一致するかどうか、ログインが許可されているかどうかを確認します。一致する場合は true を返し、そうでない場合は false を返します (これらは、返される 2 つの値のみです。
最初の「console.log」の出力には、次のようなものを探している単語の前に空白がたくさんあるようです。
"
真実"
真の上のスペースは何もないので、テストif(data == "TRUE")
すると決して真ではありません。
何か奇妙なことが起こっているか、本当にばかげた何かを見逃しています。誰が何が悪いのか見ることができますか?
時間をありがとう。