大连网站制作客服
主营业务
  • 网站制作
  • 网站维护
  • 网站推广
  • 域名空间
联系电话
联系人:尹先生
QQ:1050706570
E-mail:biz@noonenet.cn
地址:大连市甘井子区哲林北园29号
·首页 >> 网站技术 >> Asp+Ajax实现无刷新验证

Asp+Ajax实现无刷新验证

  更新时间:2009-10-22 10:26:05    编辑:阿帆

看了下面的用户注册无刷新验证用户名的例子后,在其中会明白许多道理及一些效果是怎么做出来的,下面让我们来看一个Asp+Ajax实现无刷新验证用户名是否注册的例子...

首先建立一个数据库db1.mdb为下面结构:

表test_user[u_id,u_name]

conn.asp连接数据库文件:

<%
 on error resume next
 db_path = "db1.mdb"
 Set conn= Server.CreateObject("ADODB.Connection")
 connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(db_path)
 conn.Open connstr

 Function CloseDatabase
  Conn.close
  Set conn = Nothing
 End Function
%>

usrprove.asp用户名验证页面:
<%
 Response.Buffer = True
 Response.ExpiresAbsolute = Now() - 1
 Response.Expires = 0
 Response.CacheControl = "no-cache"
 Response.AddHeader "Pragma", "No-Cache"
 %>
 <!--#include file="conn.asp"-->
 <%
 name=request.querystring("name")
 Set rs = Server.CreateObject ("ADODB.Recordset")
 sql = "Select * from test_user where u_name='"&name&"'"
 rs.Open sql,conn,1,1
 if rs.eof and rs.bof then
  response.write("true")
 else
  response.write("false")
 end if
 rs.close
 set rs=nothing
 call CloseDatabase
%>

 

reg.html注册表单页面:

<script language="javascript" type="text/javascript">
var xmlHttp = false;
try {
  xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
  try {
    xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (e2) {
    xmlHttp = false;
  }
}
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
  xmlHttp = new XMLHttpRequest();
}

function callServer() {
  var u_name = document.getElementById("u_name").value;
  if ((u_name == null) || (u_name == "")) return;
  var url = "usrprove.asp?name=" + escape(u_name);
  xmlHttp.open("GET", url, true);
  xmlHttp.onreadystatechange = updatePage;
  xmlHttp.send(null); 
}

function updatePage() {
  if (xmlHttp.readyState < 4) {
    test1.innerHTML="loading...";
  }
  if (xmlHttp.readyState == 4) {
    var response = xmlHttp.responseText;
    test1.innerHTML=response;
  }
}
</script>


<form name="form1" action="regpost.asp" method="post" autocomplete="off">
用户名: <input type="text" name="u_name" id="u_name" onChange="callServer();" />
<span id="test1">是否能注册</span><br>
密 码:<input type="password" />
<input type="submit" value="注册" />
</form>

 

regpost.asp注册信息提交页面:
<!--#include file="conn.asp"-->
<%
 name=request.form("u_name")
 Set rs = Server.CreateObject ("ADODB.Recordset")
 sql = "Select * from test_user where u_name='"&name&"'"
 rs.Open sql,conn,3,3
 if not rs.eof then
  response.write("该用户名已被注册,<a href=reg.html>返回</a>重新注册")
 else
  rs.addnew
  rs("u_name")=name
  rs.update
  response.write("注册成功,<a href=reg.html>返回</a>检测AJAX功能")
 end if
 rs.close
 set rs=nothing
 call CloseDatabase
%>

可以将代码保存到本地可以测试下效果。。。
通过这个例子,我们可以按照这个原理实现更多的效果。。。

 

原载: No.1网络工作室 http://www.noonenet.cn/
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。


Tags:Asp Ajax 无刷新验证
同类文章:
· Asp - 实现邮箱激活用户[简要思路及实例展示]
· 实现网页动态标题栏
· Asp - 截取重复字符串
· ASP 3.0与ASP 2.0的区别及改进
· 利用正则清除、去掉html标记
返回新闻列表
top
本站关键字:大连网站制作 - 大连网站建设 - 大连网页制作
CopyRight © 2009-2012 No.1网络工作室 All Rights Reserved  sitemap
地址:大连市甘井子区哲林北园29号 电话:13889684613 E-mail:biz@noonenet.cn QQ:1050706570
logo