问题描述
- ASP源码问题,添加if语句后无法打开,求帮助
-
原版:<%dim sqlrsdim usernamepasswordCheckCodeusername=replace(trim(request(""username""))'""")password=replace(trim(Request(""password""))'""")CheckCode=replace(trim(Request(""CheckCode""))'""")if UserName="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>用户名不能为空!</li>""end ifif Password="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>密码不能为空!</li>""end ifif CheckCode="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>验证码不能为空!</li>""end ifif session(""CheckCode"")="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>你登录时间过长,请重新返回登录页面进行登录。</li>""end ifif CheckCode<>CStr(session(""CheckCode"")) then FoundErr=True ErrMsg=ErrMsg & ""<br><li>您输入的确认码和系统产生的不一致,请重新输入。</li>""end ifif FoundErr<>True then password=md5(password) set rs=server.createobject(""adodb.recordset"") sql=""select * from Admin where password='""&password&""' and username='""&username&""'"" rs.open sqlconn13 if rs.bof and rs.eof then FoundErr=True ErrMsg=ErrMsg & ""<br><li>用户名或密码错误!!!</li>"" else if password<>rs(""password"") then FoundErr=True ErrMsg=ErrMsg & ""<br><li>用户名或密码错误!!!</li>"" else RndPassword=GetRndPassword(16) rs(""LastLoginIP"")=Request.ServerVariables(""REMOTE_ADDR"") rs(""LastLoginTime"")=now() rs(""LoginTimes"")=rs(""LoginTimes"")+1 rs(""RndPassword"")=RndPassword rs.update session.Timeout=SessionTimeout session(""AdminName"")=rs(""username"") session(""AdminPassword"")=rs(""Password"") session(""RndPassword"")=RndPassword rs.close set rs=nothing call CloseConn() Response.Redirect ""default.asp"" end if end if rs.close set rs=nothingend ifif FoundErr=True then call WriteErrMsg()end ifcall CloseConn()修改后:<%dim sqlrsdim usernamepasswordCheckCodeGroupusername=replace(trim(request(""username""))'""")password=replace(trim(Request(""password""))'""")CheckCode=replace(trim(Request(""CheckCode""))'""")if UserName="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>用户名不能为空!</li>""end ifif Password="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>密码不能为空!</li>""end ifif CheckCode="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>验证码不能为空!</li>""end ifif session(""CheckCode"")="""" then FoundErr=True ErrMsg=ErrMsg & ""<br><li>你登录时间过长,请重新返回登录页面进行登录。</li>""end ifif CheckCode<>CStr(session(""CheckCode"")) then FoundErr=True ErrMsg=ErrMsg & ""<br><li>您输入的确认码和系统产生的不一致,请重新输入。</li>""end ifif FoundErr<>True then password=md5(password) set rs=server.createobject(""adodb.recordset"") sql=""select * from Admin where password='""&password&""' and username='""&username&""'"" rs.open sqlconn13 if rs.bof and rs.eof then FoundErr=True ErrMsg=ErrMsg & ""<br><li>用户名或密码错误!!!</li>"" else if password<>rs(""password"") then FoundErr=True ErrMsg=ErrMsg & ""<br><li>用户名或密码错误!!!</li>"" sql=""select * from Admin where Group='""&Group&""'"" RndPassword=GetRndPassword(16) rs(""LastLoginIP"")=Request.ServerVariables(""REMOTE_ADDR"") rs(""LastLoginTime"")=now() rs(""LoginTimes"")=rs(""LoginTimes"")+1 rs(""RndPassword"")=RndPassword rs.update session.Timeout=SessionTimeout session(""AdminName"")=rs(""username"") session(""AdminPassword"")=rs(""Password"") session(""RndPassword"")=RndPassword rs.close set rs=nothing call CloseConn() else if rs(""Group"")=""Admin"" then Response.Redirect ""Default_admin.asp"" else if rs(""Group"")=""HR"" then Response.Redirect ""default_HR.asp"" else if rs(""Group"")=""SD"" then Response.Redirect ""default_Sd.asp"" else Response.Redirect ""default.asp"" end if end ifend ifif FoundErr=True then call WriteErrMsg()end ifcall CloseConn()以下部分为新增的: else if rs(""Group"")=""Admin"" then Response.Redirect ""Default_admin.asp"" else if rs(""Group"")=""HR"" then Response.Redirect ""default_HR.asp"" else if rs(""Group"")=""SD"" then Response.Redirect ""default_Sd.asp"" else Response.Redirect ""default.asp我想根据数据库中查询的所属组别,判断应该打开什么页面。
解决方案
....贴一堆代码,修改了哪里也不标注下,你要做跳转不知道自己response.redirect前判断下数据库记录中的值,进行分别跳转
时间: 2024-10-29 14:42:27