![]() |
#2
wangjy5002012-05-12 19:15
|
本系统要求用户分为老师和学生两个权限,不同权限的用户登陆后跳转至不同的页面。
下面是登陆验证的代码:

<%
CONNSTR="DBQ="+SERVER.MAPPATH("english.mdb")+";DEFAULTDIR=;DRIVER={MICROSOFT ACCESS DRIVER (*.MDB)};"
SET CONN=SERVER.CREATEOBJECT("ADODB.CONNECTION")
CONN.OPEN CONNSTR
USERNAME=TRIM(REQUEST.FORM("USERNAME"))
PASSWORD=TRIM(REQUEST.FORM("PASSWORD"))
IF USERNAME="" THEN
RESPONSE.REDIRECT "login_menu.asp"
END IF
IF PASSWORD="" THEN
RESPONSE.REDIRECT "login_menu.asp"
END IF
SET RS=SERVER.CREATEOBJECT("ADODB.RECORDSET")
SQL="SELECT * FROM user WHERE USERNAME='"&USERNAME&"'"
RS.OPEN SQL,CONN,1,3
IF NOT RS.EOF THEN
IF PASSWORD=RS("PASSWORD") THEN
SESSION("ADMIN")="YES"
ELSE
IF RS("right")=1 then
RESPONSE.Redirect("select.asp")
ELSE
IF RS("right")=2 then
RESPONSE.Redirect("apply.asp")
END IF
END IF
RS.CLOSE
CONN.CLOSE
%>
CONNSTR="DBQ="+SERVER.MAPPATH("english.mdb")+";DEFAULTDIR=;DRIVER={MICROSOFT ACCESS DRIVER (*.MDB)};"
SET CONN=SERVER.CREATEOBJECT("ADODB.CONNECTION")
CONN.OPEN CONNSTR
USERNAME=TRIM(REQUEST.FORM("USERNAME"))
PASSWORD=TRIM(REQUEST.FORM("PASSWORD"))
IF USERNAME="" THEN
RESPONSE.REDIRECT "login_menu.asp"
END IF
IF PASSWORD="" THEN
RESPONSE.REDIRECT "login_menu.asp"
END IF
SET RS=SERVER.CREATEOBJECT("ADODB.RECORDSET")
SQL="SELECT * FROM user WHERE USERNAME='"&USERNAME&"'"
RS.OPEN SQL,CONN,1,3
IF NOT RS.EOF THEN
IF PASSWORD=RS("PASSWORD") THEN
SESSION("ADMIN")="YES"
ELSE
IF RS("right")=1 then
RESPONSE.Redirect("select.asp")
ELSE
IF RS("right")=2 then
RESPONSE.Redirect("apply.asp")
END IF
END IF
RS.CLOSE
CONN.CLOSE
%>
在浏览器中测试的时候出现了以下错误:
错误类型:
Microsoft VBScript 编译器错误 (0x800A03F6)
缺少 'End'
/check1.asp, 第 35 行
小弟新手,很多地方都有错误,希望各位大侠不吝赐教,如果觉得这样还不够直观,希望各位大侠留个QQ,给小弟一些指教。
数据库user表为:
只有本站会员才能查看附件,请 登录
[ 本帖最后由 苦大仇深asp 于 2012-5-11 15:50 编辑 ]