ASP代码 用户登录问题

<%IfRequestQueryStr("action")="LOGOUT"Thensession("admin")=""session("role")=""Sessio... <%
If RequestQueryStr("action")="LOGOUT" Then
session("admin")=""
session("role")=""
Session.Abandon
Response.Redirect ("../index.asp")
'Call MessageBox("退出成功","../index.asp")
End If
Dim MyValue
Randomize
MyValue = Int((9999 - 1000 + 1) * Rnd + 1000)
If RequestFormStr("action")="LOGIN" then
admin=RequestFormStr("admin")
password=RequestFormStr("password")
checkcode=RequestFormNum("checkcode")
checkcodeO=RequestFormNum("checkcodeO")
If admin="" Then
Call MessageBox("用户名不能为空!","")
Response.End
End If
If password="" Then
Call MessageBox("密码不能为空!","")
Response.End
End If
If checkcode <> checkcodeO Then
Call MessageBox("验证码不正确!","")
Response.End
End If
'Response.Write md5(password)
'Response.End
Set rs=conn.Execute("Select * From admin Where admin='"& admin &"' and password='"& md5(password) &"'")
If rs.eof And rs.bof Then
Call MessageBox("用户名或密码不正确!","")
Response.End
Else
session("admin")=admin
session("role")=rs("role")
session.timeOut=60
Response.Redirect("index.asp")
End If
End If
%>
奇怪我这样写代码,输入正确的用户和密码后,却跳出“用户或密码不正确”
不知道哪边出错了,请高手帮忙下。
解决方法:在Set rs=conn.Execute("Select * From admin Where admin='"& admin &"' and password='"& md5(password) &"'")前面加response.write "Select * From admin Where admin='"& admin &"' and password='"& md5(password) &"'"
response.end 执行后,把结果放入SQL中。
展开
 我来答
liouxing13
2009-07-24 · 超过68用户采纳过TA的回答
知道小有建树答主
回答量:163
采纳率:0%
帮助的人:191万
展开全部
补充一句:把sql语句打印出来看看
sql执行前加上如下代码
response.write "Select * From admin Where admin='"& admin &"' and password='"& md5(password) &"'"
response.end
百度网友37eb87320
2009-07-23 · TA获得超过1600个赞
知道小有建树答主
回答量:1024
采纳率:0%
帮助的人:1207万
展开全部
1.
If rs.eof And rs.bof Then
这句逻辑错误,记录指针不可能同时指向记录头和尾
把and改成or

2.显示一下RequestFormStr这个函数处理后的结果

3.md5加密后的大小写问题,可能和数据库中不一致
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式