深圳升蓝软件
数据库开发 .Net技术  |  ASP技术 PHP技术 JSP技术 应用技术类   
Hiblue Software

用ASP实现一个真正的注册页面


March 25,2004
沙滩小子
        (一),设定注册页面的外观:
               
    在这个例子中涉及了五个页面,其中有三幅是一般的htm文件,另外的两幅是asp文件,在这里制作利用的工具是frontpage98,但是大部分的asp代码还是要自己输入的:
            1,设定原来已经注册的用户进入的外观:在这里设置了两个文本框,一个超级链接和两个按钮。两个文本框分别用来输入帐号(txtNum)和密码(txtPasswd),超级链接(New)链接到新用户进行注册的页面,两个按钮是用来提交和清除的,用来清除的按钮(cmdReset)直接选择为Reset类型,不过用来提交的按钮(cmdTijiao)并不要选择为Submit类型,而选择的是Normal类型,这是为了在这个按钮的onClick事件中添加代码,并且判断用户的输入是否合法!
            2,设定新用户登陆的页面外观:一般都是要新用户输入帐号,密码,姓名,及相关的一些信息,在这里我们有五个文本框,一个下拉式列表框和两个按钮,五个文本框就分别是让用户输入姓名,email,帐号,密码,确定密码。但是其中只有用来输入帐号,密码和确定密码的文本框有名字,分别为txtNum,txtPasswd和txtConfirm。提交按钮的名字为cmdTijiao
            3,这一步当然是设定注册成功后用户所进的页面了,这就由大家决定吧:)
        (二),添加程序代码:
            1,首先添加原来已经注册用户页面的代码,它主要是处理cmdTijiao_onClick事件,并且判断用户的输入是否合法,在这个例子中要求帐号必须是数字,密码不能为空,代码如下,其中frmRes是这个页面中窗口的名字,窗口的Action指向http://your/ResJudge.asp
   
                   sub cmdTijiao_onClick()
                   if
    frmRes.txtNum.value="" or frmRes.txtPasswd.value="" or (Not
    IsNumeric(frmRes.txtNum.value)) then
                     
    Alert"请在帐号和密码中输入相应的内容,帐号必须为数字!"
                  else
    frmRes.submit
                  end if
                  end sub
                   2,添加新用户登陆的页面代码,这些代码是用来处理cmdTijiao_onClick事件的,要求用户输入的帐号必须是数字,密码和确定密码必须相同,这个页面的窗口的Action指向http://your/NewRes.asp,代码如下:
           sub cmdTijiao_onClick()
                  if Not
    IsNumeric(frmNew.txtNum.value) or frmNew.txtPasswd.value<>frmNew.txtConfirm.value
    then
                     
    Alert"输入不正确,请重新输入!"
                  else
    frmNew.submit
                  end if
                  end sub
                  3,创建ResJudge.asp文件,这个asp文件的主要功能就是打开存储注册信息的数据库,查找是否有与前面页面提交的帐号和密码相匹配的纪录,如果有,就是注册成功,同时也可以在数据库中查找出这个用户的相关信息来,应允许这个用户进入他所希望进去的页面,如果没有则注册失败,整个代码如下:
          <html><head>
               <meta
    http-equiv="Content-Type" content="text/html;charset=gb2312">
               <meta
    name="GENERATOR" content="Microsoft Fronpage 3.0">
               <titile>注册判断</title></head>
               <body><%
               
    Num=Request.form("txtNum")
                 "把前面窗口传送来的内容赋给Num和Passwd两个字符串。
               
    Passwd=Request.form("txtPasswd")
               
    dbname="Driver={Microsoft Access
    Driver(*.mdb)};DBQ="&Server.MapPath("")"&"ResDbRes.mdb;"
              "dbname是打开数据库要用的
           set
    Cres=Server.CreateObject("ADODB.Connection")      
    "以下是利用Connection对像和Recordset对象联结数据库并查找的代码。
               set
    res=Server.CreateObject("ADODB.Recordset")
               Cres.open dbname
               res.ActiveConnection=Cres
               res.source="Select*from
    res where 帐号='"&Num&"' and 密码='"&Passwd&'";"
               res.open
               if res.BOF then
               "如果查找结果为空,那么就说明注册不正确,所以在页面中显示下面的文本/
               %><p>注册不正确,
    请返回注册页面重新注册!</p>
               <%
               else
                     
    “否则就说明注册成功,可以进入浏览页面!
          %>
               <!--#Include
    virtual="/success.htm"-->
              "这里采用了Server Side
    Include的方法,把允许浏览的页面包含在这个文件里面!
               <%  res.Close
                 “
    关闭刚才打开的数据库。
               end if %>
               </body></html>
               4,创建 NewRes.asp文件,这个文件的主要功能是把新用户的登陆信息存入数据库,代码如下:
               
    <html><head>
               <meta
    http-equiv="Content-Type" content="text/html;charset=gb2312">
               <meta
    name="GENERATOR" content="Microsoft frontpage 3.0">
               <title>输入数据库</title></head>
               <body><!--#Include
    virtual="/adovbs.inc">           
    “这个被包含进来的文件adovbs.inc是定义数据库对象ADO常量的文件。
          <%
               
    Num=Request.form("txtNum")
                 
    “把前面主页传送过来的内容赋给Num和Passwd两个变量。
           Passwd=Request.form("txtPasswd")
               Set
    res=Server.CreateObject("ADODB.Recordset")
                 
    “打开数据库。
               
    dbname="Driver={Microsoft Access
    Driver(*.mdb)};DBQ="&ServerMapPath("")&"ResDbRes.mdb;"
               sql="select*from
    res"
               res.open
    sql,dbName,adOpenKeyset,adLockOptimistic
               res.AddNew
                “添加新纪录
          res(1)=Num
                 “res(1)代表数据库中的第二个字段,存储的是用户的帐号。
               res(2)=Passwd
              “res(2)代表数据库中的第三个字段,存储的是用户的密码。
               res.Update
                     
    “更新数据库/
               res.Close   %>
               <p><b><font
    face=楷体_gb2312 size=5>您的帐号和密码已经注册成功,您现在可以<a
    href="http://your/index.htm">进入</a>了!</font></p>
           
               </body></html>
                 本文由沙滩小子整理制作,您可以转载,但请务必注明其出处及保持其完整性,谢谢!
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved