让代码更简单

AJAX基础教程二

重要:本文最后更新于2018-01-22 12:57:53,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

上一章我们知道,ajax可以在不重新加载网页的情况下,更新网页。那么最容易想到的应用地方就是在用户注册的时候。很多网站都有在注册时,通过用户输入的用户名来判断用户是否已经注册,已经注册的在注册框后面显示一段提示消息,今天我们就来实现这个功能。

需要两个文件,一个静态的注册页面,ajaxw.html文件和一个用来接收用户数据并进行判断逻辑的ajaxtest11.php文件。

ajaxw.html文件代码如下:

复制
<html>
<head><title>代码狗ajax基础教程二</title>
<script type="text/javascript">
function showHint(str)//实时判断用户名函数
{
var xmlhttp;
if (str.length==0)
 {
 document.getElementById("txtHint1").innerHTML="";
 return;
 }
if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
 }
else
 {// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
xmlhttp.onreadystatechange=function()
 {
 if (xmlhttp.readyState==4 && xmlhttp.status==200)
 {
 document.getElementById("txtHint1").innerHTML=xmlhttp.responseText;
 }
 }
xmlhttp.open("GET","ajaxtest11.php?q="+str,true);
xmlhttp.send();
}
function showHint2(str)//实时判断用户邮箱函数
{
 var xmlhttp;
if (str.length==0)
{
 document.getElementById("txtHint2").innerHTML="";
 return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
 xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
 xmlhttp.onreadystatechange=function()
 {
 if (xmlhttp.readyState==4 && xmlhttp.status==200)
 {
 document.getElementById("txtHint2").innerHTML=xmlhttp.responseText;
 }
 }
 xmlhttp.open("GET","ajaxtest11.php?e="+str,true);
 xmlhttp.send();
}
</script>
</head>
<body>
<center>
<h3>ajax注册测试:</h3>
<form action="">
<p>
<div>用户名:<input type="text" id="txt1" onkeyup="showHint(this.value)" />&nbsp;&nbsp;<a><span id="txtHint1"></span></a></div></p>
<p><div>邮箱:<input type="text" id="txt2" onkeyup="showHint2(this.value)" />&nbsp;&nbsp;<a><span id="txtHint2"></span></a></div></p>
</form>
</center>
</body>
</html>

ajaxtest11.php文件代码如下:

复制
<?php
if(isset($_GET['q'])){   //接收用户名
 $q=$_GET['q'];
 if($q=="admin"){
 echo "该用户已注册!";
 }else{
 echo "用户名尚未注册!";
 }
}else if(!isset($_GET['q'])){
 echo "";                //如果用户名为空,清空提示
}
if(isset($_GET['e'])){          //接收用户邮箱
 $e=$_GET['e'];
 if($e=="12345@qq.com"){
 echo "此邮箱已注册!";
 }else{
 echo "此邮箱可以注册!";
 }
}else if(!isset($_GET['e'])){//如果用户邮箱为空,清空提示
 echo "";
}
?>

如果输入的用户名和邮箱分别是admin与12345@qq.com则会提示已经注册。因为教程需要简单,所以这里就没有写数据库操作了,需要的朋友可以看看这篇文章:代码狗php对mysql进行增删改查操作教程

效果图如下:

代码狗phpajax教程

在线测试入口:

 

感觉很棒!可以赞赏支持我哟~

0 打赏

评论 (0)

登录后评论
QQ咨询 邮件咨询 狗哥推荐