用ASP实现一个真正的注册页面
2000-04-16 10:06:03 来源:WEB开发网沙滩小子
(一),设定注册页面的外观:
在这个例子中涉及了五个页面,其中有三幅是一般的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("\")"&"\ResDb\Res.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("\")&"\ResDb\Res.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>
更多精彩
赞助商链接