问题描述
如题..下面是代码..<%IfTrim(Request("act"))="login"ThenIfNotIsNumeric(Request.Form("Code"))ThenJsAlertBack("验证码格式不对")Response.End()EndIfIfCint(Session("pubYZM"))<>Cint(Request.Form("Code"))ThenJsAlertBack("验证码错误,请重新输入")Response.End()EndIfSqlStr="SelectTop1*FromA_DminWhereAName='"&Fixsql(Request("AdminName"))&"'And[PassWord]='"&Fixsql(Request("PassWord"))&"'"SetRs=Conn.Execute(SqlStr)IfNotRs.EofAndNotRs.BofThen'session("UserName")=Rs("AName")&""'session("flag")="djj"&""Response.Cookies("admin")("UserName")=Rs("AName")Response.Cookies("admin")("PassWord")=Rs("PassWord")Conn.Execute("UpdateA_DMINSetLogins=Logins+1,LastLoginDate=now(),LastLoginIP='"&getip()&"'WhereAName='"&Rs("AName")&"'")Response.Redirect("index.asp")ElseErrorStr="帐号或密码错误,登陆失败"EndIfRs.CloseSetRs=NothingEndIfConn.CloseSetConn=Nothing%>
解决方案
解决方案二:
IfNotIsNumeric(Request.Form("Code"))ThenJsAlertBack("验证码格式不对")Response.End()EndIfIfCint(Session("pubYZM"))<>Cint(Request.Form("Code"))ThenJsAlertBack("验证码错误,请重新输入")Response.End()EndIf要先验证验证码:IfCint(Session("pubYZM"))<>Cint(Request.Form("Code"))ThenJsAlertBack("验证码错误,请重新输入")Response.End()EndIfIfNotIsNumeric(Request.Form("Code"))ThenJsAlertBack("验证码格式不对")Response.End()EndIf
解决方案三:
按照你的代码,IfCint(Session("pubYZM"))<>Cint(Request.Form("Code"))Then这个条件可定执行,并且结果为否,那你就把Cint(Session("pubYZM"))和Cint(Request.Form("Code"))分别打印出来,看看到底是什么
解决方案四:
1楼的不行..其实以前是没有问题的...但是不知道最近为什么会出现这样的问题..
解决方案五:
估计跟我的一样了。。本地调试都没问题。。放到服务器之后,一直提示错的你试试不输入验证码或者输入四个空格看能不能登录。。那问题我到现在还没解决。。郁闷了。。
解决方案六:
4楼的..刚刚我试了..不行..会提示验证码格式不对的..
解决方案七:
传过来时Session("pubYZM")里面有没有赋值把Cint改成CStr看看
解决方案八:
IfNotIsNumeric(Request.Form("Code"))ThenJsAlertBack("验证码格式不对")Response.End()EndIf这段屏蔽了之后,输入空格或者不输入验证码应该可以进入了。。输出Session("pubYZM")看看是什么吧如果是空的要么把验证码模块去了或者直接换个服务器,我直接换了个服务器就可以了。。这个问题也郁闷了我几天。
解决方案九:
response.write(Session("pubYZM"))response.write(Request.Form("Code"))response.end()这上面打印出来这里两个值就清楚了,要学会调试..IfCint(Session("pubYZM"))<>Cint(Request.Form("Code"))ThenJsAlertBack("验证码错误,请重新输入")Response.End()EndIf