2009-08-17 77 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