注册 登录
编程论坛 ASP技术论坛

asp登录程序总提示用户名不存在

ikonglin 发布于 2010-12-11 22:36, 1005 次点击
我的代码运行后,如果第一次使用正确的用户名和密码登录可以,如果第一次用一个正确的用户名,密码错了,登录后提示密码错误,然后返回登录页面,再输入正确的密码却提示用户名不存在,以后不管输入用户名和密码正不正确都会提示用户名不存在。代码如下
<!-- #include file="conn.asp" -->
<%
dim namestr,passstr
namestr=trim(request.Form("name"))
passstr=trim(request.Form("password"))
set rs=server.CreateObject("adodb.recordset")
sql="select * from admin where name='"& namestr & "'"
rs.open sql,conn,1,1
if rs.eof then
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
<script language="javascript">
alert("用户名不存在");
history.back();
</script>
<%
response.End()
else
if rs("password")<>passstr then
rs.close
set rs=nothing
conn.close
set conn=nothing
%>
<script language="javascript">
alert("密码错误");
history.back();
</script>
<%
response.End()
end if
session("admin")=namestr
end if
%>
7 回复
#2
ikonglin2010-12-11 22:54
知道原因了,用history.back()返回原来的页面后,在用户名文本框内的变量不能变动,必须刷新后才能保存值。现在用window.location=url实现返回,返回登录页面是刷新后的页面。
#3
天涯听雨2010-12-12 00:15
这程序写的真是有些杯具……
#4
ikonglin2010-12-12 08:05
我不是搞IT的,是医生,只是对电脑有点兴趣,真不会什么编程,也没学习过,什么算法思想完全不懂,是一边查书一边写的。高手见笑了,多来论坛学习
#5
markjet2010-12-17 17:32
set rs=server.CreateObject("adodb.recordset")
sql="select * from admin where name='"& namestr & "'"
rs.open sql,conn,1,1


这段好像登录的时候只要用户名正确就行了啊!
我有点晕了!
#6
markjet2010-12-17 17:36
<script language="javascript">
alert("用户名不存在");
history.back();
</script>
这一段不如写成
<%
response.write ("<script>alert('用户名不存在!');history.back();</script>")
%>
#7
ikonglin2010-12-19 20:59
这是我自学的测试页面,不是用来登录的。慢慢学习
#8
hugeannex2010-12-20 09:46
新手加油!
1