Microsoft 的大作ASP(Active Server Pages)以其易学易用、扩充性好、功能多而强等优点正掀起一场新的web编程革命(从严格意义上讲,编写asp并不是编程),它以令人吃惊的发展和普及速度大有取代由perl等语言编写的CGI(Common Gateway Interface,通用网关接口) 的势头。基于web page方式的web管理模式已经成为潮流,看看现在的网管们,有谁不会asp的编写呢?要管理?那你可能就要用到我这里要说的“密码验证”了。简单地说,密码验证就是首先判断你是不是有登录权限,如果有,就继续,否则,哼哼……。什么?你到现在还不知道ASP是什么东东?“该程序执行了非法操作,即将被关闭。如仍有问题,请与程序供应商联系。”----------系统语
下面,我们就来看看实现密码验证的ASP需要些什么吧。
一、 ASP运行环境:
Windows 95/98单机平台:PWS (Personal Web Server)4.0 、windows NT 4.0/5.0服务器平台:IIS(Internet Information Server )Service Pack 3 及其以上版本)
NT workstation 4.0 工作站平台:PWS(Personal Web Server )NT workstation版及最新版的IE浏览器。
二、 用于制作ASP的软件
Windows FrontPage 98/2000 、Dreamweaver 3.0 ,如果这些软件你都没有,那你就用windows 中的Notepad 当一次“代码编写狂”吧。不过ASP中很多代码仍是需要我们手工编写大量代码的,用专用的网页制作软件只不过是偷一丁点懒而已。
三、 用哪一种数据库作为储存用户资料(用户名及密码)的数据库呢?
SQL Server、Microsoft Access 97/2000等都可以。本人建议你使用Access,因为你可能对它比较熟悉,一旦有问题,解决起来比较容易,更深的原因是:Microsoft Access相对于其它非服务器等级的数据库执行的效率要高得多。
好了,废话说了这么多,可能你早已经不耐烦了。不过,这对于一些ASP的初学者可能还是有帮助的,对于这部分读者,你们可能还得要看看关于ASP方面的书籍或网站来增加你对ASP基本语法的了解。
让我们一步一步来做这个密码验证吧,我采用的是Windows 98 + PWS 4.0平台,IE 5.0浏览器,网页制作软件:FrontPage 2000. Go!
一、创建用户密码数据库
先用Access建立一个用户密码数据库,建立字段名id和psd,并添加值.如:id的值我设为:admin,psd的值为:www,当然,你还可以继续添加用户id及psd,完成后保存为:psd.mdb。
二、编写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