主题:为什么用户名密码输入是正确的,而程序提示是错误的。
zzh820411
[专家分:30] 发布于 2008-07-05 17:36:00
用户名:admin
密码:admin
网页: http://ywit.gnway.net/index.asp
代码错在哪?
回复列表 (共12个回复)
沙发
zzh820411 [专家分:30] 发布于 2008-07-05 17:40:00
userlogin.asp
<!--#include file="conn.asp"-->
<%
dim sql1,UName,UPassword,Yzm,Gly
UName=trim(request("name1"))
UPassword=trim(request("Password1"))
Yzm=trim(request("yzm"))
Gly=request("Gly")
if yzm=trim(session("yzm_no")) then
if Gly="ok" then
set rs=server.createobject("adodb.recordset")
sql1="select * from admin_u where admin_name='"+UName+"' and admin_pwd='"+UPassword+"'"
rs.open sql1,conn,1,1
if rs.eof then
response.write("<script language=vbscript>"&"msgbox"&"""1用户名密码错误!!!"""&"</script>")
response.write("<script>history.go(-1)</script>")
else
if UPassword=rs("Admin_pwd") then
session("AdminLogin")="yes"
session("UserLogin")="no"
session("AdminName")=Uname
session.Timeout=50
response.redirect("index.asp?list=1")
end if
end if
else
set rs=server.createobject("adodb.recordset")
sql1="select * from yg_user where user_name='"&UName&"' and user_pwd='"&UPassword&"'"
rs.open sql1,conn,1,1
if rs.eof then
response.write("<script language=vbscript>"&"msgbox"&"""2用户名密码错误!!!"""&"</script>")
response.write("<script>history.go(-1)</script>")
else
if UPassword=rs("user_pwd") then
session("AdminLogin")="no"
session("UserLogin")="yes"
session("UserName")=Uname
session.Timeout=5
response.redirect("index.asp?list=2")
end if
end if
end if
else
if UName="" or UPassword="" then
response.write("<script language=vbscript>"&"msgbox"&"""3用户名,密码,验证码错误!!!"""&"</script>")
response.write("<script>history.go(-1)</script>")
else
response.write("<script language=vbscript>"&"msgbox"&"""4验证码错误!!!"""&"</script>")
response.write("<script>history.go(-1)</script>")
end if
end if%>
<%
'-----------关闭数据库
rs.close
conn.close
set rs=nothing
set conn=nothing
'---------------------
%>
板凳
zzh820411 [专家分:30] 发布于 2008-07-05 17:42:00
conn.asp
<%
dim conn,DataSrc,rs
DataSrc="db1.mdb" '修改为你的数据库存放路径。
on error resume next
Set conn = Server.Createobject("Adodb.Connection")
conn.Open "Driver={Microsoft Access Driver (*.Mdb)};Dbq=" & Server.Mappath(DataSrc)
%>
3 楼
tianyu123 [专家分:2570] 发布于 2008-07-05 19:02:00
你确定数据库中的用户名及密码都是 admin 吗?
是不是你数据库中密码字段经过加密了,而你在验证时却没有进行相应的转换!
4 楼
zzh820411 [专家分:30] 发布于 2008-07-06 08:21:00
确定,没有加密。
5 楼
zzh820411 [专家分:30] 发布于 2008-07-06 08:22:00
而且一运行就到这行了。
response.write("<script language=vbscript>"&"msgbox"&"""1用户名密码错误!!!"""&"</script>")
6 楼
zzh820411 [专家分:30] 发布于 2008-07-06 10:54:00
高手帮我看看。
7 楼
LuckyLine [专家分:1940] 发布于 2008-07-07 13:32:00
如果把
set rs=server.createobject("adodb.recordset")
sql1="select * from admin_u where admin_name='"+UName+"' and admin_pwd='"+UPassword+"'"
rs.open sql1,conn,1,1
改成
sql1="select * from admin_u where admin_name='"+UName+"' and admin_pwd='"+UPassword+"'"
set rs=conn.execute(sql1)
会怎样呢?(因为我用SQL SERVER数据库时是这样做的。Access没用过,这里只是猜想)
8 楼
tianyu123 [专家分:2570] 发布于 2008-07-07 17:48:00
楼上的两种方法结果都是一样的,但效率第二种更高。
9 楼
zzh820411 [专家分:30] 发布于 2008-07-08 09:46:00
能不能帮我改改,我给个下载地址。
[url=http://ywit.gnway.net/1.rar]http://ywit.gnway.net/1.rar[/url]
10 楼
zzh820411 [专家分:30] 发布于 2008-07-08 09:50:00
我就郁闷了,为什么数据会查不到记录。
我来回复