欢迎光临
我们一直在努力

ASP与数据库运用:密码验证-ASP教程,数据库相关

建站超值云服务器,限时71元/月

asp与数据库运用:密码验证

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

        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="reset" value="清除" name="b1"></p>

        </form>

        <%response.end

        end if %> ‘验证过程结束,进入加密网页。

        </body>

        </html>

        完成了psd.asp的编写,可能你早已经迫不及待地想知道log.asp怎么编写了吧。让我们继续吧!

        log.asp的内容:

        <!–#include file="psd.asp"–>

      ‘在log.asp源代码中的顶部输入这句,作用就是在系统执行log.asp之前先执行psd.asp啦!

        <html>

        <head>

        <title>用户验证通过,您已经成功登录系统</title>

        </head>

        <body><center><p><p><p><p>用户验证通过,您已经成功登录!<br>

        现在你可以进行你想要的操作了。如果你有什么问题,请来信email<a

      href="mailto:kanwo@163.net?subject=问你几个关于密码验证的问题">kanwo@163.net</a></center>

        </body>

        </html>

        呵呵……手写了这么多,还受得了吧。你在编写完成之后,可以移植到其它平台上,比如windows

      nt。最后,将你做的这两个asp文件及psd.mdb数据库放在同一个目录下(该目录必须在pws或iis中有www服务),比如:c:\inetpub\wwwroot\。然后,在确保你的pws或iis在运行的情况下,在你们ie浏览器的地址栏中输入http://127.0.0.1/log.asp,看看,会有什么!(如果你在登录过程中听到你的硬盘在响,可别吓着了哟!)

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » ASP与数据库运用:密码验证-ASP教程,数据库相关
分享到: 更多 (0)