2009-03-05 81 views
1

当用户在我的网站上创建一个帐户时,我希望将输入的用户名与我的数据库(MySQL)中的所有当前用户名进行检查并确认它是否可用。AJAX实时电子邮件验证(PHP)

有没有人知道我可以使用的任何好的库,或者jQuery的插件?

回答

3

正是你想要的例子形式here给出什么。它使用jQuery作为JavaScript库

+0

你会如何定制以检查正确的电子邮件提交? – 2012-03-01 22:01:28

1

创建一个将用户名作为参数的PHP文件。然后通过jquery中的$ .get方法传递它。这然后返回一个变量(在我的情况下称为数据)该变量将包含任何PHP文件打印。

$.get("ajax_available.php?u="+username, function(data){ 
    if(data == "true") 
    { 
     // username avaiable 
      $("#usernameAlert").html("<img src='images/icons/accept.png' 
       title='Laust' /> Username available"); 
    } 
    else 
    { 
     // username not avaiable 
    } 
}); 

在这个例子中,我的php文件返回字符串“true”,但这只是一个简单的例子。

2

这是未经测试的代码,服务器端

<?php 
// check_username_available.php?name=(name they supplied) 

// this stuff is normally in config.inc.php 
$username = "..."; // Mysql username 
$password = "..."; // Mysql password 
$db_name = "..."; // Database name 

// get name supplied from querystring 
$name = $_GET('name'); 

// Connect to server and select database. 
// 
mysql_connect("localhost", $username, $password) or die("cannot connect to db"); 
mysql_select_db($db_name) or die("cannot select $db_name DB"); 

$query = "SELECT COUNT(*) FROM 'users' WHERE user_name = '$name'"; 
$result = mysql_query($query) or die("cannot count rows: " . mysql_error()); 

header("Content-Type: text/plain"); 
echo (0 < mysql_result($result, 0) ? "false" : "true");