主题:  求助

xuqie

职务:普通成员
等级:1
金币:0.0
发贴:4
#12004/8/4 10:13:51
我的数据库设置都是正确的,但是后台不能登陆是什么原因
这是我的代码:<%
    if request("verifycode")="" then
errmsg=Errmsg+"<br>"+"<li>请返回输入确认码。返回后请刷新登陆页面后重新输入正确的信息。</b>"
call sys_Error()
     Response.End
    elseif session("getcode")="9999" then
session("getcode")=""
elseif session("getcode")="" then
errmsg=errmsg+"<br>"+"<li>请不要重复提交,如需重新登陆请返回登陆页面。<li><b>返回后请刷新登陆页面后重新输入正确的信息。</b>"
     call sys_Error()
     response.end
elseif cstr(session("getcode"))<>cstr(trim(request("verifycode"))) then
errmsg=errmsg+"<br>"+"<li>您输入的确认码和系统产生的不一致,请重新输入。<li><b>返回后请刷新登陆页面后重新输入正确的信息。</b>"
     call sys_Error()
     response.end
end if
session("getcode")=""
username=replace(trim(request("username")),"'","")
password=replace(trim(request("password")),"'","")
if username="" or password="" then
     Errmsg=Errmsg+"<br>"+"<li>请输入您的用户名或密码。<b>返回后请刷新登陆页面后重新输入正确的信息。</b>"
     call sys_Error()
     response.end
    else
     username =trim(checkStr(request.form("username")))
     password =md5(trim(checkStr(request.form("password"))))
    end if
set rs = server.createobject("adodb.recordset")
sql = "select * from [user] where username='"&username&"' and password='"&password&"'"
rs.open sql,conn,1,3
if not rs.eof then
     if rs("lockuser")=true then
     Errmsg=Errmsg+"<br>"+"<li>您的帐号被锁定,请与系统管理员联系!"
         call sys_Error()
         response.end
     else
     UserId=rs(0)
     UserName=rs(1)
     Flag=rs(16)
     UserIP=Request.ServerVariables("REMOTE_ADDR")

conn.execute("Update [user] set LoginNum=LoginNum+1,LastLogintime='"&now()&"',LastLoginIP='"&UserIP&"' where username='"&username&"'")
     usercookies=request("usercookies")
     if isnull(usercookies) or usercookies="" then usercookies="0"
select case usercookies
case "0"
     Response.Cookies("chinabluebook")("usercookies") = usercookies
case 1
     Response.Cookies("chinabluebook").Expires=Date+1
     Response.Cookies("chinabluebook")("usercookies") = usercookies
case 2
     Response.Cookies("chinabluebook").Expires=Date+31
     Response.Cookies("chinabluebook")("usercookies") = usercookies
case 3
     Response.Cookies("chinabluebook").Expires=Date+365
     Response.Cookies("chinabluebook")("usercookies") = usercookies
end select
     session.Timeout=SessionTimeOut
     response.cookies("chinabluebook")("UserID")=UserID
     response.cookies("chinabluebook")("UserName")=UserName
     response.cookies("chinabluebook")("password")=Password
     response.cookies("chinabluebook")("Flag")=Flag
     session("username")=UserName
     rs.close()
     set rs=nothing
     if request.cookies("chinabluebook")("Flag")=1 and request.cookies("chinabluebook")("UserName")<>"" then
     response.redirect "admin_admin.asp"
     else
     response.Redirect("index.asp")
     end if
     end if
else
Errmsg=Errmsg+"<br>"+"<li>您输入的用户名和密码不正确或者您不是系统管理员。<br><li>请<a href=login.asp>重新输入</a>您的密码。<li><b>返回后请刷新登陆页面后重新输入正确的信息。</b>"
call sys_Error()
     response.end
    end if
    rs.close
set rs=nothing
conn.close
set conn=nothing
%>



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#22004/8/4 10:25:30
什么叫不能登陆,所表现的症状是什么?



xuqie

职务:普通成员
等级:1
金币:0.0
发贴:4
#32004/8/4 10:31:22
就是登陆不成功



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#42004/8/4 10:39:07
那是程序出错,还是逻辑出错?



xuqie

职务:普通成员
等级:1
金币:0.0
发贴:4
#52004/8/4 10:43:42
登陆以后他提示
产生错误的可能原因


请不要重复提交,如需重新登陆请返回登陆页面。
返回后请刷新登陆页面后重新输入正确的信息。



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#62004/8/4 10:52:28
自己判断一下这段代码的逻辑
出现的提示是因为session("getcode")为空

elseif session("getcode")="9999" then
session("getcode")=""
elseif session("getcode")="" then
errmsg=errmsg+"<br>"+"<li>请不要重复提交,如需重新登陆请返回登陆页面。<li><b>返回后请刷新登陆页面后重新输入正确的信息。</b>"
call sys_Error()
response.end



xuqie

职务:普通成员
等级:1
金币:0.0
发贴:4
#72004/8/4 11:04:48
那应该怎么改呢?



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#82004/8/4 11:22:48
你应该看一下session("getcode")是在哪里产生的,为什么是空?