asp中如何检测用户名已经存在?

不提交全部表单中的其它内容,只检测一下用户名... 不提交全部表单中的其它内容,只检测一下用户名 展开
 我来答
匿名用户
2013-10-26
展开全部
可以用现在很流行的ajax.对你这种情况最适合:
参考: http://edu.2e7.net/articleview/2006-7-13/article_view_1007.htm

当输入已经存在的用户名(如cnbruce、cnrose)时页面将显示重名不能注册(false),否则将显示可以注册(true),这为用户的注册提供了快速的参考,用户体验至上。
首先是定义XMLHttp对象

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 = "cu.asp?name=" + escape(u_name);
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = updatePage;
xmlHttp.send(null);
}

该函数的主要功能就是异步获得cu.asp的内容,在此前将先提取当前页表单元素“u_name”即用户名文本框zhogn 的值,通过cu.asp其后的参数及赋值而得到了不同的结果(true or false)。

那么这里要说的即是cu.asp,他的主要功能就是接受URL参数name的值做内容显示,该内容最终被t1.htm异步获取。

<!--cu.asp的源码示例-->

<!--#include file="conn.asp"-->
<%
name=request.querystring("name")
Set rs = Server.CreateObject ("ADODB.Recordset")
sql = "Select * from u_ser 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
%>

如何将异步获取的信息显示在当前页呢

function updatePage() {
if (xmlHttp.readyState < 4) {

test1.innerHTML="loading...";
}
if (xmlHttp.readyState == 4) {

var response = xmlHttp.responseText;

test1.innerHTML=response;
}
}

其中xmlHttp.readyState中的readyState表示服务器在处理请求时的进展状况,其值分别有0-4,各有其说明情况,具体请参看

使用DHTML中的innerHTML可显示信息在定义的 <span id="test1">是否能注册</span> 上。
匿名用户
2013-10-26
展开全部
用select语句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式