font color="#FF6633" * /font /td td align="left" bgcolor="#FFFFFF" id="repwd" 请再次输入登录密码。 /td /tr /table 如图: screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" alt="" src="http://leehui1983.bokee.com/photo/view.fcgi?mode=3&id=4108996" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" border=0>
红色部分就是一会要调用的js函数了,当我们选定一个文本框后就会开始调用,现在我们看上面那个页面包含的ajaxreg.html' target='_blank'>js文件的代码,里面就是包含了ajax框架和一些判断函数。 var http_request=false; function send_request(url){//初始化,指定处理函数,发送请求的函数 http_request=false; //开始初始化XMLHttpRequest对象 if(window.XMLHttpRequest){//Mozilla浏览器 http_request=new XMLHttpRequest(); if(http_request.overrideMimeType){//设置MIME类别 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){//异常,创建对象实例失败 window.alert("创建XMLHttp对象失败!"); return false; } http_request.onreadystatechange=processrequest; //确定发送请求方式,URL,及是否同步执行下段代码 http_request.open("GET",url,true); http_request.send(null); } //处理返回信息的函数 function processrequest(){ if(http_request.readyState==4){//判断对象状态 if(http_request.status==200){//信息已成功返回,开始处理信息 document.getElementById(reobj).innerHTML=http_request.responseText; } else{//页面不正常 alert("您所请求的页面不正常!"); } } } function usercheck(obj){ var f=document.reg; var username=f.username.value; if(username==""){ document.getElementById(obj).innerHTML=" font color=red 用户名不能为空! /font f.username.focus(); return false; } else{ document.getElementById(obj).innerHTML="正在读取数据..."; send_request('checkuserreg.php?username='+username); reobj=obj; } } function pwdcheck(obj){ var f=document.reg; var pwd=f.userpwd.value; if(pwd==""){ document.getElementById(obj).innerHTML=" font color=red 用户密码不能为空! /font f.userpwd.focus(); return false; } else if(f.userpwd.value.length 6){ document.getElementById(obj).innerHTML=" font color=red 密码长度不能小于6位! /font f.userpwd.focus(); return false; } else{ document.getElementById(obj).innerHTML=" font color=red 密码符合要求! /font } } function pwdrecheck(obj){ var f=document.reg; var repwd=f.reuserpwd.value; if (repwd==""){ document.getElementById(obj).innerHTML=" font color=red 请再输入一次密码! /font f.reuserpwd.focus(); return false; } else if(f.userpwd.value!=f.reuserpwd.value){ document.getElementById(obj).innerHTML=" font color=red 两次输入的密码不一致! /font f.reuserpwd.focus(); return false; } else{ document.getElementById(obj).innerHTML=" font color=red 密码输入正确! /font } } 不难看出,数据是通过异步传输到checkuserreg.php接着回送回信息显示出来来达到实时检测用户名的目的,至于密码,只作了长度的实时判断,有兴趣的朋友可以扩充功能。来看下checkuserreg.php到底都做了什么: ?php header('Content-Type:text/html;charset=GB2312');//避免输出乱码 include('inc/config.inc.php');//包含数据库基本配置信息 include('inc/dbclass.php');//包含数据库操作类 $username=trim($_GET['username']);//获取注册名 //----------------------------------------------------------------------------------- $db=new db;//从数据库操作类生成实例 $db- mysql($dbhost,$dbuser,$dbpassword,$dbname);//调用连接参数函数 $db- createcon();//调用创建连接函数 //----------------------------------------------------------------------------------- $querysql="select username from cr_userinfo where username='$username'";//查询会员名 $result=$db- query($querysql); $rows=$db- loop_query($result); //若会员名已注册 //----------------------------------------------------------------------------------- if($rows){ echo" font color=red 此会员名已被注册,请更换会员名! /font } //会员名未注册则显示 //----------------------------------------------------------------------------------- else{ echo" font color=red 此会员名可以注册! /font } if($action==reg){ $addsql="insert into cr_userinfo values(0,'$username','$userpwd','$time',50,1,'$userquestion','$useranswer')";
//----------------------------------------------------------------------------------- $db=new db;//从数据库操作类生成实例 $db- mysql($dbhost,$dbuser,$dbpassword,$dbname);//调用连接参数函数 $db- createcon();//调用创建连接函数 //----------------------------------------------------------------------------------- //开始插入数据 //----------------------------------------------------------------------------------- $addsql="insert into cr_userinfo values(0,'$username','$userpwd','$time',50,1,'$userquestion','$useranswer')"; $db- query($addsql); echo" img src=images/pass.gif font color=red 恭喜您,注册成功!请点击 a href=login.php 这里 /a 登录! /font
$db- close();//关闭数据库连接 ? OK!!大功告成,来看看效果图: 1. screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" alt="" src="http://leehui1983.bokee.com/photo/view.fcgi?mode=3&id=4109258" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" border=0>
2. screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" alt="" src="http://leehui1983.bokee.com/photo/view.fcgi?mode=3&id=4109286" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" border=0>
3. screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" alt="" src="http://leehui1983.bokee.com/photo/view.fcgi?mode=3&id=4109299" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" border=0>
4. screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" alt="" src="http://leehui1983.bokee.com/photo/view.fcgi?mode=3&id=4109333" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" border=0>
5. screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" alt="" src="http://leehui1983.bokee.com/photo/view.fcgi?mode=3&id=4109336" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window/nCTRL+Mouse wheel to zoom in/out';}" border=0>