当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP进阶教程Ⅶ:留言簿设置密码验证

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

ASP进阶教程Ⅶ:留言簿设置密码验证


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 262 ::
收藏到网摘: n/a

了兑现我对大家的承诺,我们现在立即就将“借助数据库和ASP程序”编写出来的,可以同时适用于IIS和PWS的安全网页看个仔细。
  先睹为快,还是让我们首先就来看看该ASP程序(password.asp)。
< %
Function CheckPassword( Name, Password )
Dim conn, param, rs
Set conn = Server.CreateObject("ADODB.Connection")
param = "driver={Microsoft Access Driver (*.mdb)};"
conn.Open param & ";dbq=" & Server.MapPath("book2.mdb")
sql = "Select * From key Where Name="" & Name & "" And Password = "" &      Password & """
Set rs = conn.Execute( sql )
If rs.EOF Then
"如果没有数据记录存在
CheckPassword = False
Else
CheckPassword = True
End If
End Function
%>
"编写一Function函数,利用这个函数向数据库book2.mdb传入Name和Password(即用户名和密码);然后利用Select指令从key数据表中选取具有与函数传入的Name和Password相吻合的数据记录;最后用If...Then...Else语句来判断数据表key中是否存在有符合条件的数据记录,并据此,给Function返回相应的结果。
< %
If IsEmpty(Session("Passed")) Then Session("Passed") = False
"判断上网者的Session("Passed")是否为空,即是否没有Session信息,如果是的话则说明上网者是第一次启动以下的程序。
Head = "请输入您的姓名和密码"
Name = Request("Name")
Password = Request("Password")
If Name = "" Or Password = "" Then
Head = "请输入您的姓名和密码"
"因为是初来者,所以Name = Request("Name")和Password = Request("Password")都等于空字符串,Session("Passed") = False,语句:If Not Session("Passed")(见下面)成立,于是将输入“用户名称及密码”的页面(见下图)显示出来。
ElseIf Not CheckPassword( Name, Password ) Then
Response.write "用户名称或密码错误"
Response.end
"如果上网者输入的“用户名称及密码”不正确的话,则显示说明信息:"用户名称或密码错误"
Else
Session("Passed") = True
End If
"当然,当上网者输入的“用户名称及密码”是正确的话,则Session("Passed")将等于 True。
If Not Session("Passed") Then
"如果If Not Session("Passed") Then不成立的话,将不会显示输入“用户名称及密码”的页面,而是直接进入加密的网页。
%>
"我们可以使用Session对象来存储特定用户的Session信息,即使该客户端由一个Web页面跳到另一个Web页面,该Session信息仍然存在。所以我们在这里用Session对象来存储上网者的信息,只要你通过了该密码验证,Session("Passed")就记下你已通过了该密码验证,因此在Session对象的有效期限内,你如果再次访问该网页时就不用再输入用户名称及密码就可以直接进行被加密的页面。
"-=在此省去了输入用户名称及密码页面的HTML代码=-
  输入用户名称及密码的页面如下所示:
 
< %
Response.End
End If
%>