我有一個非常簡單的形式建立,我使用jQuery驗證檢查我的領域,這似乎是工作文件。然後我想用php文件設置遠程,以檢查用戶名的可用性。當我回顯check_num_rows時,我得到與輸入相匹配的行數。jQuery驗證插件遠程不能用PHP工作if語句
$check_num_rows = mysql_num_rows($check);
我不想匹配的只是數量明顯,所以我加了一個if語句使它看起來像這樣...
$username = mysql_real_escape_string($_GET['username']);
$check = mysql_query("SELECT username FROM users WHERE username='$username'");
$check_num_rows = mysql_num_rows($check);
if ($check_num_rows == 1)
{
echo "Username taken!";
}
定期驗證仍然有效,但我不」不像以前那樣得到回聲,這導致我相信這只是最後幾行代碼的錯誤,但我沒有看到它。以下是Jquery驗證部分。
$("#register").validate({
rules: {
username: {
minlength: 5,
remote: "check-username.php"
},
password: {
minlength: 6
}
}
});
我已經看到類似的問題的其他答案,但沒有什麼適合在這裏。謝謝!
謝謝!根據你的建議,我添加了「其他」聲明。現在,當我返回true時,沒有任何迴應屏幕,當它是假的我有「用戶名採取」這正是我想要的。我還添加了json_encode。代碼現在看起來像這樣...'$ username = mysql_real_escape_string($ _ GET ['username']); $ check = mysql_query(「SELECT username FROM users WHERE username ='$ username'」); $ check_num_rows = mysql_num_rows($ check); 如果($ check_num_rows> 0){ $ 無效= 「用戶名被取!」; } 其他{$ 無效= 「真」; } 回聲\ json_encode($無效);' – user2530671