如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第12章Web应用程序设计实例12.1会员登录系统<%
Response.Buffer=True
If(Len(Request.ServerVariables("LOGON_USER"))=0)then
'表示没有通过用户名称及密码的检查
Response.Status="401Unauthorized"
Response.End
EndIf
%>
结果是当上网者浏览Member.ASP网页时,首先会出现如图12-1所示的"输入网络密码"对话框。图12-1"输入网络密码"对话框 如果上网者输入了合法的用户名及密码,则Request.ServerVariables("LOGON_USER")将返回用户名称(如图12-1中的admin);如果无法登录合法的用户名及密码,则Request.ServerVariables("LOGON_USER")将返回空字符串。
12.1.2会员密码检验程序
使用NT/2000Server来管理"会员网页"的优点是不必写复杂的程序,但每新增一个会员,就必须使用"域用户管理员"来建立用户名称及密码,这将极大地增加"域用户管理员"的工作量,且使用起来非常不方便。下面我们来自制会员密码检验程序。
1.数据库(表)结构
新建一名为Userpwd.mdb的数据库,数据表(User)存放会员信息,结构如表12-1所示。
2.验证用户名称及密码的程序
设定用户登录网页如图12-2所示,其验证程序如下:
<%
IfRequest("Send")<>EmptyThen
UserID=Request("UserID")
Password=Request("Password")
SQL="Select*FromUsersWhereUserID='"&UserID&"'"
SQL=SQL&"AndPassword='"&Password&"'"
Setrs=MdbRecordset("Userpwd.mdb",SQL)
IfNotrs.EOFThen '找得到记录,表示通过Response.Write"通过!"
Else
Response.Write"用户名称或密码错误!"
EndIf
Response.End
EndIf
%>图12-2用户登录网页 12.1.3密码验证功能的加入
1.编写Login.asp
如果"会员网页"很多,则我们将上述验证密码的程序段加到每一个网页会非常麻烦。此时,也可以专门编写一个Login.asp程序,使其具备以下功能:
(1)检验目前的联机者是否已经登录,若还没有登录,则先显示图的登录画面。
(2)检验联机者所登录的账号及密码是否正确。
(3)如果联机者已经登录过或所登录的账号及密码是正确的,则进入下一个网页。 Login.asp程序的代码内容如下:
<%
IfmdbFile=EmptyThenmdbFile="Userpwd.mdb"
IfUserID=EmptyThenUserID=Request("UserID")
IfPassword=EmptyThenPassword=Request("Password")
Passed=Session(mdbFile)
IfPassed<>"Passed"AndUserID<>EmptyAndPassword<>EmptyThen
Passed=CheckPassword(UserID,Password,mdbFile,mdbPassword)
EndIf
IfPassed<>"Passed"Then
%><HTML>
<BODYBGCOLOR="#FFFFFF">
<H2ALIGN=CENTER>请输入用户账号及密码:</H2>
<CENTER>
<FORMAction=<%=Request.ServerVariables("PATH_INFO")%>Method=POST>
<TABLEBORDER=1CELLSPACING=0>
<TR>
<TDALIGN=RIGHT>用户名称:</TD>
<TD><InputType=TextName=UserIDSize=12Value=<%=UserID%>></TD>
</TR><TR><TDALIGN=RIGHT>密码:</TD>
<TD><InputType=PasswordName=PasswordSize=12Value=<%=Password%>></TD>
</TR>
</TABLE><P>
<InputType=SubmitValue="确定">
</FORM>
</CENTER><HR>
<%IfPassed="NotPassed"Then'不是第一次进入%>
<FONTColor=Red>用户账号或密码错误,请重新输入!
as****16
实名认证
内容提供者
最近下载