1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > php异步检测用户名是否已经存在 AJAX实例-检测用户名是否存在

php异步检测用户名是否已经存在 AJAX实例-检测用户名是否存在

时间:2023-05-01 18:06:09

相关推荐

php异步检测用户名是否已经存在 AJAX实例-检测用户名是否存在

用户注册时,需要填写个人信息,其中包括用户名。当用户输入完成时,JavaScript 需要及时检测用户名是否存在,如果存在给出提示,请用户更换用户名。

当然,这个步骤可以在用户提交表单以后由后台程序检测,如果用户名已存在,用户需要返回注册页面重新填写用户名,而前面填写的其他信息也随着网页的跳转已经过期,全部需要重填,这对用户来说是极大的伤害。

因此,有必要使用 AJAX 在用户不提交信息的情况下及时检测用户名是否存在。

前台代码:

请输入用户名:

document.getElementById("demo").οnblur=function(){ // 输入框失去焦点

var thisNode=this;

var span=document.getElementById("result");

var xmlhttp;

try{

// code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest();

}catch(e){

// code for IE6, IE5

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

}

xmlhttp.onreadystatechange=function(){

if(xmlhttp.readyState<4){ // 正在交互

span.style.color="blue";

span.innerHTML="正在检测...";

}

if (xmlhttp.readyState==4 && xmlhttp.status==200){ // 请求成功

if(parseInt(xmlhttp.responseText)){ // 将服务器返回的数据转换为整数

span.style.color="red";

span.innerHTML="抱歉,您填写的用户名已经存在!";

}else{

span.style.color="green";

span.innerHTML="恭喜你,填写正确!";

}

}

}

xmlhttp.open("POST","/demo/javascript/ajax/ajaxDemo.php?action=checkUserName",true);

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

xmlhttp.send("username="+thisNode.value);

}

后台代码(PHP):

if($_GET['action']=="checkUserName"){

// 为简单起见,这里不再查询数据库,使用 3 个用户名作为示例

if(

$_POST['username']=="admin"||

$_POST['username']=="xiaoming"||

$_POST['username']=="zhangsan"

){

echo 1;

}else{

echo 0;

}

}

?>

实例演示(输入完成,请将焦点离开输入框):

请输入用户名:

说明:"admin"、"xiaoming"和"zhangsan"三个用户名已存在。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。