用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

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

时间:2015-01-23  来源:西部数据  作者:西部数据

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

  1. <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"
  2. <html xmlns="http://www.phpfensi.com/1999/xhtml"
  3. <head> 
  4. <meta http-equiv="content-type" content="text/html; charset=gb2312" /> 
  5. <title>ajax+php验证用户名重复代码实例</title> 
  6. <script language="javascript"
  7. function createxmlhttprequest(){//创建xmlhttprequest对象 
  8.  if(window.activexobject){//ie 
  9.   try { 
  10.    return new activexobject("microsoft.xmlhttp"); 
  11.   } catch(e){ 
  12.    return
  13.   } 
  14.  }else if(window.xmlhttprequest){//mozilla,firefox 
  15.   try { 
  16.    return new xmlhttprequest(); 
  17.   } catch(e){ 
  18.    return
  19.   } 
  20.  } 
  21. function getrenews(value){//主调函数 
  22.  var xmlhttp=createxmlhttprequest(); 
  23.  var url = "13.php?action=check&title="+value+"&mt="+math.random(300000); 
  24.  if (value==""){   
  25.   return false ; 
  26.  } 
  27.  if (xmlhttp){ 
  28.   callback = getreadystatehandler(xmlhttp); 
  29.   xmlhttp.onreadystatechange = callback; 
  30.   xmlhttp.open("get", url,true); 
  31.   xmlhttp.send(null); 
  32.  } 
  33. function getreadystatehandler(xmlhttp){//服务器返回后处理函数 
  34.  return function (){ 
  35.   if(xmlhttp.readystate == 4){ 
  36.    if(xmlhttp.status == 200){ 
  37.        alert(xmlhttp.responsetext); 
  38.      if (xmlhttp.responsetext==1){ 
  39.        document.getelementbyid("checkid").innerhtml="<font color='red'>对不起,用户名己存在!</font>";      
  40.      }else
  41.       document.getelementbyid("checkid").innerhtml="可以注册";      
  42.      }       
  43.    } 
  44.   } 
  45.  } 
  46. </script> 
  47. </head> 
  48. <body> 
  49. <table width="75%" border="0"
  50.   <tr> 
  51.     <td width="12%">输入用户名</td> 
  52.     <td width="36%">     
  53.       <input type="text" name="username" id="username" onblur="getrenews(this.value);" /> 
  54.     </td> 
  55.     <td width="52%" id="checkid">&nbsp;</td> 
  56.   </tr> 
  57. </table> 
  58. </body> 
  59. </html> 

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

  1. <?php 
  2. checkusername(); 
  3. function checkusername() 
  4.  $title = trim($_get['title']); 
  5.  ifemptyempty$title ) ) 
  6.  { 
  7.   return false; 
  8.  } 
  9.  else 
  10.  { 
  11.   mysql_connect('localhost','root','root'); 
  12.   mysql_select_db('test'); 
  13.   mysql_query("set names 'gb2312'"); 
  14.   $sql = "select * from cn_user where username ='$title'"
  15.    
  16.   $row = mysql_query($sql); 
  17.    
  18.   if( mysql_num_rows( $row ) ) 
  19.   { 
  20.    echo 1; 
  21.   } 
  22.   else 
  23.   { 
  24.    return null; 
  25.   } 
  26.  } 
  27. }
  28. ?>

创建数据库SQL代码如下:

  1. create table `test`.`cn_user` (  
  2. `id` int not null auto_increment ,  
  3. `username` varchar( 20 ) not null ,  
  4. `times` date null ,  
  5. primary key ( `id` )   
  6. ) engine = myisam  
  7. //插入数据  
  8. insert into `test`.`cn_user` (  
  9. `id` ,  
  10. `username` ,  
  11. `times`   
  12. )  
  13. values (  
  14. null , 'jimmy'null   
  15. ), (  
  16. null , 'www.phpfensi.com'null   
  17. );
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
    无相关信息
栏目更新
栏目热门