2009-08-17 79 views
5

我知道這是可能的,但我很困惑它是如何工作的。我一直在尋找在線爲它是怎麼做的,我想我失去了一些東西在這個過程中jQuery檢查mysql數據庫如果用戶名已被採用

我到目前爲止這jQuery代碼:

$("#Contact_Info").validate({ 
     rules: { 
      username: { 
       required: true, 
       minlength: 6, 
       remote: "check-username.php" 
       } 
      }, 
     messages: { 
      username:{ 
       remote: "This username is already taken! Try another." 
      } 
     } 
    }); 

我應該怎麼寫我的PHP頁面,使之談到jQuery代碼?

到目前爲止,我有:

$name = mysql_real_escape_string($name); 

$query = "SELECT USERNAME FROM T_MEMBER WHERE USERNAME='$name';"; 
$res = mysql_query($query); 
if (mysql_num_rows($res) > 0) { 
    return false; 
} else 
    return true; 

我如何從的JavaScript獲得$ name變量?我必須將「遠程」設置爲POST嗎?

由於提前, 伊恩·麥卡洛

回答

4

你的PHP頁面通信回給Javascript只是通過輸出數據。根據不同的插件,你可以實現true/false呼應1或0,或者甚至字符串truefalse

手冊上說:

的響應被評估爲JSON,並且必須是true爲有效的元素,可以是任何false, undefined or null爲無效元素

所以您可以將PHP改成這樣:

if (mysql_num_rows($res) > 0) { 
    $output = true; 
} else { 
    $output = false; 
} 
echo json_encode($output); 
+0

謝謝!我錯過了json_encode(); – 2009-08-23 19:49:25