扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共2页)
二、编写psd.ASP(用户登录界面页,完成验证的功臣就是它了)及log.ASP(成功登录后显示的页面)。在编写之前,我们来分析一下常见的用户登录界面,比如说你想收取基于web page方式免费邮件箱的登录界面:管理用户登录的文件名常常为log.*,开始登录时是这个文件,登录完成后浏览器的地址栏中还是显示的这个文件名,这是怎么回事儿呢?用ASP的方法来讲,原来,用户登录的文件被包含在登录完成后的文件中。以我现在要讲的这个例子来说,psd.ASP就是被包含在log.ASP中了。用户登录时看到的文件名将是:log.ASP,而log.ASP要求系统先执行psd.ASP,通过验证之后才看到真正的log.ASP网页。对了!实际上密码验证的关键在psd.ASP。在你读完本文后,你会深深体会这一点。既然psd.ASP文件是关键,那我们就先来看看psd.ASP是怎么写的。
运行FrontPage新建一个文件,并保存为:psd.ASP(在FrontPage 的保存类型中选取“Active Server Pages”)。在FrontPage 左下角选取“HTML”先在它的顶部进行ASP源代码的编写,内容如下(以下源代码中凡出现“‘……”的均为注释):
<%
function checkPwd(id,psd) '检测用户id及密码
dim conn,param,rs
set conn=server.createobject("adodb.connection") '创建数据库连接对象conn
param="driver={microsoft access driver (*.mdb)}" ‘指定数据库驱动程序,不可省略写为“access diver(*.mdb)”
conn.open param & ";dbq=" & server.mappath("psd.mdb") '用指定的数据库驱动程序打开数据库,并指定数据路径
sql="select*from psd where id='" & id & "' and psd='" & psd & "'" ‘定义sql从数据库中读取id及psd的值,本行中的第一个psd是指数据库名,以后的psd是指psd.mdb中的psd字段。
set rs=conn.execute(sql) '打开数据库
if rs.eof then
checkpwd=false
else
checkpwd=true
end if
end function ‘以上几句判断是否已经读完数据库中的记录,如果没有,就向后读,如果已经完成,则验证用户名及密码。如果验证通过,则为true,反之为flase
%>
<%
if isEmpty(session("passed")) then session("passed")=false '判断用户输入信息
id=request("id") ‘获取用户id(用户名)
psd=request("psd") ‘获取用户psd(密码)
if id="" or psd="" then
response.write"请输入您的登录名及密码。" '如果用户没有输入完整的信息,返回出错信息。
elseif not checkpwd(id,psd) then
response.write"用户名或密码错误!<br>请检查你的用户名及密码然后再试一次!" ‘如果用户已经输入完整信息,但输入错误也返回出错信息。
else session("passed")=true
end if
if not session("passed") then%> ‘用户输入的信息完全正确并验证通过,以下开始编写HTML代码,做一个用户登录界面。
<HTML>
<head>
<meta http-equiv="Content-Type" content="text/HTML; charset=gb2312">
<title>请您输入您的用户名及密码!</title>
</head>
<body bgcolor="#000000" text="#FFFFFF">
<p align="center">
<p align="center"> </p>
<p align="center"><b><font face="黑体" size="6">用户登录首页</font></b></p>
<p align="center"> </p>
<form method="POST" action="<%=request.serverVariables("psd.mdb")%>">
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td width="41%" align="right">用户名:</td>
<td width="59%"><input type="text" name="id" size="20" value="<%=id%>"></td>
</tr>
<tr>
<td width="41%" align="right"> 密 码:</td>
<td width="59%"><input type="password" name="psd" size="20" value="<%=psd%>"></td>
</tr>
<tr>
<td width="41%"> </td>
<td width="59%"> </td>
</tr>
</table>
<p align="center"><input type="submit" value="提交" name="B1"><input type=收藏地址:>
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者