六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 23|回复: 0

ajax之用户名唯一性验证的实现(php)

[复制链接]

升级  84.67%

53

主题

53

主题

53

主题

秀才

Rank: 2

积分
177
 楼主| 发表于 2013-1-23 02:40:31 | 显示全部楼层 |阅读模式
用户名唯一性验证的实现 在一些需要用户注册的系统中,由于系统需要保证用户名的唯一性,在注册时往往需要检查用户名。在一些使用传统方式设计的网站中,往往需要提交整个页面来进行用户名唯一性的检查。这种方式虽然可以正确检测用户名的唯一性,但是对于用户的友好度比较差。
使用Ajax进行用户名唯一性检查可以在不影响用户表单填写的情况下执行,大大增加了表单的友好度。以下代码是一个进行用户名唯一性验证的例子。

<div class="highlighter">

  • <html>

  • <head>

  • <title>AjaxExample</title>

  • <scripttype="text/javascript">

  • varxmlobj;//定义XMLHttpRequest对象

  • functionCreateXMLHttpRequest()

  • {

  • if(window.ActiveXObject) //如果当前浏览器支持ActiveXobject,则创建ActiveXObject对象

  • {

  • xmlobj=newActiveXObject("Microsoft.XMLHTTP");

  • }

  • elseif(window.XMLHttpRequest)//如果当前浏览器支持XMLHttpRequest,则创建XMLHttpRequest对象

  • {

  • xmlobj=newXMLHttpRequest();

  • }

  • }

  • functionValidate()//主程序函数

  • {

  • CreateXMLHttpRequest();//创建对象

  • varshowurl="validate.php?username="+document.getElementById("username").value;//构造URL

  • xmlobj.open("GET",showurl,true);//调用validate.php

  • xmlobj.onreadystatechange=StatHandler;//判断URL调用的状态值并处理

  • xmlobj.send(null);//设置为不发送给服务器任何数据

  • }

  • functionStatHandler()//用于处理状态的函数

  • {

  • if(xmlobj.readyState==4&&xmlobj.status==200)//如果URL成功访问,则输出网页

  • {

  • if(xmlobj.responseText=="1")//检查用户名是否有效

  • {

  • document.getElementById("msg").innerHTML="<fontcolor=RED>该用户名已被人使用</font>";

  • }

  • elseif(xmlobj.responseText=="0")

  • {

  • document.getElementById("msg").innerHTML="<fontcolor=GREEN>该用户名未被人使用</font>";

  • }

  • else

  • {

  • document.getElementById("msg").innerHTML="<fontcolor=RED>用户名验证程序出错</font>";

  • }

  • }

  • }

  • </script>

  • </head>

  • <body>

  • <p><formaction="">

  • 用户名:<inputtype="text"id="username">

  • <inputtype="button"value="用户名验证"onclick="Validate();">

  • <divid="msg"></div>

  • </form></p>

  • </body>

  • </html>


您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表