首页 > php开发 > ajax+php验证用户名重复代码实例

ajax+php验证用户名重复代码实例

本教程是一款利用了ajax php在用户输入完用户名后,就会发送请求给php程序,然后查询数据,判断用户要注册的用户名是不是己经注册或存在重复了,及时的返回提示信息,以免用户填写了一大填表单后,突然提供用户名不能注册己被注册了,这样体验就不好了,本教程就是专门解决这个问题了,能快速的告诉你要注册的用户名是否可以注册.

<!doctype html> 
<html xmlns="http://www.phprm.com/1999/xhtml"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=gb2312" /> 
<title>ajax+php验证用户名重复代码实例</title> 
<script language="javascript"> 
function createxmlhttprequest() { //创建xmlhttprequest对象
if (window.activexobject) { //ie
try {
return new activexobject("microsoft.xmlhttp");
} catch (e) {
return;
}
} else if (window.xmlhttprequest) { //mozilla,firefox
try {
return new xmlhttprequest();
} catch (e) {
return;
}
}
}
function getrenews(value) { //主调函数
var xmlhttp = createxmlhttprequest();
var url = "13.php?action=check&title=" + value + "&mt=" + math.random(300000);
if (value == "") {
return false;
}
if (xmlhttp) {
callback = getreadystatehandler(xmlhttp);
xmlhttp.onreadystatechange = callback;
xmlhttp.open("get", url, true);
xmlhttp.send(null);
}
}
function getreadystatehandler(xmlhttp) { //服务器返回后处理函数
return function () {
if (xmlhttp.readystate == 4) {
if (xmlhttp.status == 200) {
alert(xmlhttp.responsetext);
if (xmlhttp.responsetext == 1) {
document.getelementbyid("checkid").innerhtml = "<font color='red'>对不起,用户名己存在!</font>";
} else {
document.getelementbyid("checkid").innerhtml = "可以注册";
}
}
}
}
}
</script> 
</head> 
<body> 
<table width="75%" border="0"> 
  <tr> 
<td width="12%">输入用户名</td> 
<td width="36%">     
  <input type="text" name="username" id="username" onblur="getrenews(this.value);" /> 
</td> 
<td width="52%" id="checkid">&nbsp;</td> 
  </tr> 
</table> 
</body> 
</html>

把下面代码保存忝13.php,代码如下:

<?php
checkusername();
function checkusername() {
    $title = trim($_get['title']);
    if (emptyempty($title)) {
        return false;
    } else {
        mysql_connect('localhost', 'root', 'root');
        mysql_select_db('test');
        mysql_query("set names 'gb2312'");
        $sql = "select * from cn_user where username ='$title'";
        $row = mysql_query($sql);
        if (mysql_num_rows($row)) {
            echo 1;
        } else {
            return null;
        }
    }
}

创建数据库SQL代码如下:

create table `test`.`cn_user` (  
`id` int not null auto_increment ,  
`username` varchar( 20 ) not null ,  
`times` date null ,  
primary key ( `id` )   
) engine = myisam  
//插入数据  
insert into `test`.`cn_user` (  
`id` ,  
`username` ,  
`times`   
)  
values (  
null , 'jimmy', null   
), (  
null , 'www.phprm.com', null   
);

   


本文地址:http://www.phprm.com/develop/fs5402.html

转载随意,但请附上文章地址:-)

标签:ajax+php验证用户名 用户名重复

发表留言