注册页面:reg.asp
<FORM name=form1 onSubmit="return checkregister();" action="usersave.asp" method=post> <INPUT class=input0 onblur=checkuser(); name=chrname> <SPAN id=check>3-24字符内,可以是汉字,a-z,0-9以及下划线</SPAN> </FOEM> <SCRIPT src="js/main.js" type=text/javascript></SCRIPT>
js文件:main.js
var right="<img src='images/note_ok.gif'>"; var error="<img src='images/note_error.gif'>"; var ok=right+"验证正确等提示语句,我在这里省略了"; var no=error+"验证不正确等提示语句,我在这里省略了"; var csh=error+"<span style="color:red">xmlhttp对象正在初始化......</span>"
function setmsg(obj,id){ document.getElementById(obj).innerHTML = eval(id); } function checkuser(){ trimspace(document.form1.chrname); var username = document.form1.chrname.value; var lent=judgeString(username); if (lent<3 || lent>24) { setmsg('check','ok'); return false; } setmsg('check','waite_chkname'); checknamess(document.form1.chrname.value); }
function createAjax() { //该函数将返回XMLHTTP对象实例 var _xmlhttp; try { _xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { try { _xmlhttp=new XMLHttpRequest(); } catch (e) { _xmlhttp=false; } } return _xmlhttp; }
function checknamess(name) { //该函数用来获取数据 var xmlhttp1=createAjax(); if (xmlhttp1) { var span=document.getElementById('check'); //获取显示节点 xmlhttp1.open('get','checkname.asp?name='+name+'&n='+Math.random(),true); xmlhttp1.onreadyStateChange=function() { if (xmlhttp1.readyState==4 && xmlhttp1.status==200) { span.innerHTML=unescape(xmlhttp1.responseText); } else { setmsg('check','csh'); }
} xmlhttp1.send(null); } }
asp文件:checkname.asp
<% ' 添加数据库连接 dim sql,user user=trim(request.QueryString("name")) ' 获取用户名并过滤非法字符 if user="" then Response.Write escape("<img src='images/note_error.gif'><font color='#ff0000'>用户名不能为空</font>") response.End() end if sql="select s_user from s_user where s_user='"&user&"'" ' 查询数据库中是否有重复记录 rs.open sql,conn,1,1
If not(rs.Eof And rs.Bof) Then Response.Write escape("<img src='images/note_error.gif'><font color='#ff0000'>已经存在此成员名,请更换.</font>") ' 返回
结果并进行编码转义 Else Response.Write escape("<img src='images/note_ok.gif'><font color=green>此用户名可以注册</font>") end if %> |