2 u011608495 u011608495 于 2016.02.01 11:14 提问

ASP源码问题,添加if语句后无法打开,求帮助
 原版:
<%
dim sql,rs
dim username,password,CheckCode
username=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 if
if Password="" then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>密码不能为空!</li>"
end if
if CheckCode="" then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>验证码不能为空!</li>"
end if
if session("CheckCode")="" then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>你登录时间过长,请重新返回登录页面进行登录。</li>"
end if
if CheckCode<>CStr(session("CheckCode")) then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>您输入的确认码和系统产生的不一致,请重新输入。</li>"
end if
if FoundErr<>True then
    password=md5(password)
    set rs=server.createobject("adodb.recordset")
    sql="select * from Admin where password='"&password&"' and username='"&username&"'"
    rs.open sql,conn,1,3
    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=nothing
end if
if FoundErr=True then
    call WriteErrMsg()
end if
call CloseConn()

修改后:
<%
dim sql,rs
dim username,password,CheckCode,Group
username=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 if
if Password="" then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>密码不能为空!</li>"
end if
if CheckCode="" then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>验证码不能为空!</li>"
end if
if session("CheckCode")="" then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>你登录时间过长,请重新返回登录页面进行登录。</li>"
end if
if CheckCode<>CStr(session("CheckCode")) then
    FoundErr=True
    ErrMsg=ErrMsg & "<br><li>您输入的确认码和系统产生的不一致,请重新输入。</li>"
end if
if FoundErr<>True then
    password=md5(password)
    set rs=server.createobject("adodb.recordset")
    sql="select * from Admin where password='"&password&"' and username='"&username&"'"
    rs.open sql,conn,1,3
    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 if
end if
if FoundErr=True then
    call WriteErrMsg()
end if
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
我想根据数据库中查询的所属组别,判断应该打开什么页面。

1个回答

showbo
showbo   Ds   Rxr 2016.02.01 11:19

....贴一堆代码,修改了哪里也不标注下,你要做跳转不知道自己response.redirect前判断下数据库记录中的值,进行分别跳转

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!