php应用Ajax技术检测用户名
1.搭建Ajax开发框架,代码如下
<script language="javascript"> var http_request = false; function createRequest(url) { //初始化对象并发出XMLHttpRequest请求 http_request = false; if (window.XMLHttpRequest) { //Mozilla等其他浏览器 http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { http_request.overrideMimeType("text/xml"); } } else if (window.ActiveXObject) { //IE浏览器 try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { alert("不能创建XMLHTTP实例!"); return false; } http_request.onreadystatechange = alertContents; //指定响应方法 http_request.open("GET", url, true); //发出HTTP请求 http_request.send(null); } function alertContents() { //处理服务器返回的信息 if (http_request.readyState == 4) { if (http_request.status == 200) { alert(http_request.responseText); } else { alert(‘您请求的页面发现错误‘); } } } </script>
2.编写JavaScript的自定义函数checkname();用于检测用户名是否为空,当用户名不为空时,调用createRequest() 方法发送请求检测用户名是否存在,代码如下:
function checkname() { var username = form1.user.value; if (username=="") { window.alert ("请输入用户名"); } else { createRequest(‘action/checkname.php?username=‘+username+‘&nocache=‘+new Date().getTime()); } }
3.在页面添加"检测用户名超链接"
<td width="93" class="ziti2"><a href="#" onclick="checkname()">[检测用户名]</a></td>
4.创建checkname.php处理页面,代码如下
<?php header("Content-type= text/html; charset=utf8"); include "../conn/conn.php"; $GB2312string=iconv( ‘UTF-8‘, ‘gb2312//IGNORE‘ , $RequestAjaxString); //Ajax中先用encodeURIComponent对要提交的中文进行编码 $username = $_GET[username]; $sql=mysql_query("select * from user where username=‘".$username."‘")or die (mysql_error()); $info=mysql_fetch_array($sql); if($info) { echo "祝贺您!用户名[".$username."]没有被注册!"; } else { echo "祝贺您!用户名[".$username."]没有被注册!"; } ?>
初学PHP,在学习实践中记录下问题,技巧,代码有问题或者有其他意见欢迎提出,共同进步~
本文出自 “dream” 博客,请务必保留此出处http://snbo520.blog.51cto.com/3069187/1410510
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。