很急,大家帮我看看这段ASP代码

来源:百度知道 编辑:UC知道 时间:2024/07/05 04:11:47
<%
set rs=server.CreateObject ("adodb.recordset")
sql="select * from qyml where user='"&request("user")&"'"
rs.open sql,conn,1,3

if not rs.eof then
response.write"<SCRIPT language=JavaScript>alert('恭喜您!成为"&WebName&"的会员,请登录后填写您公司的资料!');"
response.write"this.location.href='login.asp';</SCRIPT>"
response.end

rs.addnew
rs("user")=user
rs("pass")=pass
rs("idate")=date()
rs.update
else
response.write"<SCRIPT language=JavaScript>alert('该户名已经存在,请重新填写用户名。');"
response.write"javascript:history.go(-1)</SCRIPT>"
response.end
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
<%end if%>

大家帮我看看 这个 代码有错误吗, 我用了这段代码,结果数据提交的时候,总是说都注册成功,如果真的是新用户名,那的确能注册成功的,但有时候明明是 原数据库里已存在的用户名,他也说注册成功

你的顺序搞错的.

not rs.eof 后面的结果应该是已经有人注册了

你把

response.write"<SCRIPT language=JavaScript>alert('该户名已经存在,请重新填写用户名。');"
response.write"javascript:history.go(-1)</SCRIPT>"
response.end



response.write"<SCRIPT language=JavaScript>alert('恭喜您!成为"&WebName&"的会员,请登录后填写您公司的资料!');"
response.write"this.location.href='login.asp';</SCRIPT>"
response.end

rs.addnew
rs("user")=user
rs("pass")=pass
rs("idate")=date()
rs.update

换一下试试

你这当然不对了,RS查询的是用户是否存在,如果不为空,就是存在,可是你做的却是:不为空就注册!当然不对了~~~~

你把最上边的:if not rs.eof then 改为:if rs.eof then