实验十四用户注册系统设计.docx
《实验十四用户注册系统设计.docx》由会员分享,可在线阅读,更多相关《实验十四用户注册系统设计.docx(11页珍藏版)》请在冰豆网上搜索。
![实验十四用户注册系统设计.docx](https://file1.bdocx.com/fileroot1/2023-2/3/3c7be061-fa77-4116-8ae1-839fb6b9fa14/3c7be061-fa77-4116-8ae1-839fb6b9fa141.gif)
实验十四用户注册系统设计
实验十四用户注册系统设计
1、新建一个动态站点,并进行测试,测试的代码为:
<%=now()%>
2、在站点的根目录下建立如下图所示的结构目录(红色标注)。
3、双击打开注册页面即register.html,并进行如下图所示的设计:
该表单的属性名字输入如下:
用户名的文本框:
username
密码的文本框:
pwd
重复密码的文本框:
secpwd
真实姓名的文本框:
truename
性别的单选框:
sex(选定值分别设置为:
男、女)
Emai的文本框:
email
QQ号码的文本框:
qqnum
自我介绍的文本框:
userdesc
4、打开代码视图,找到如图所示的地方,给action设置跳转页面。
5、打开access数据库建立一个webdb.mdb数据库,并建立一张和注册页面对应的数据表表名为Users,并把此数据库保存在站点的根目录下。
结构如下图所示:
6、双击打开dbconn.asp页面,删除原有代码,并编写如图所示的代码:
红色标注的为数据库的路径,根据自己的网站进行修改。
<%
DimobjConn,connStr
SetobjConn=Server.CreateObject("ADODB.Connection")
connStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&_
Server.MapPath("/webdb.mdb")
objConn.OpenconnStr
%>
7、双击打开endconn.asp页面,删除原有代码,并编写如图所示的代码:
<%
objRS.Close
objConn.Close
SetobjRS=Nothing
SetobjConn=Nothing
%>
7、双击打开register.asp页面,在
标签之间插入如下代码:
--#includevirtual="/include/dbconn.asp"-->
<%
DimUserName,Pwd,TrueName,Sex
DimEmail,QQNumber,UserDescription
DimobjRS,sqlStr,ErrMsg
UserName=Trim(Request("username"))
Pwd=Trim(Request("pwd"))
TrueName=Trim(Request("truename"))
Sex=Trim(Request("sex"))
Email=Trim(Request("email"))
QQNumber=Trim(Request("qqnum"))
UserDescription=Trim(Request("userdesc"))
SetobjRS=Server.CreateObject("ADODB.RecordSet")
sqlStr="SELECT*FROMusersWHEREusernameLIKE'"&UserName&"'"
objRS.OpensqlStr,objConn,1,3
IfNotobjRS.EOFThen
ErrMsg="该用户名已被别人注册了,请换个用户名!
"
Else
objRS.AddNew
objRS("username")=UserName
objRS("pwd")=Pwd
objRS("truename")=TrueName
objRS("sex")=Sex
IfEmail<>""ThenobjRS("email")=Email
IfQQNumber<>""ThenobjRS("qqnumber")=QQNumber
IfUserDescription<>""ThenobjRS("userdesc")=UserDescription
objRS("regtime")=Now()
objRS.Update
EndIf
%>
--#includevirtual="/include/endconn.asp"-->
<%
IfIsEmpty(ErrMsg)Then
Response.Write("恭喜您注册成功!
")
Else
Response.Write(ErrMsg&"
")
EndIf
%>
返回登陆
注:
红色为表单的名称,蓝色标注的为数据库的字段
预览结果:
8、双击打开登陆页面即:
login.html,并进行页面设计如下图所示:
并设置表单的属性:
用户名的文本框:
username
密码的文本框:
pwd
设计完成后打开代码视图,修改action的值。
10、双击打开login.asp页面,在
标签之间插入如下代码:
--#includevirtual="/include/dbconn.asp"-->
<%
dimusername,pwd,logintimes,errmsg
dimobjrs,sqlstr
username=trim(request("username"))
pwd=trim(request("pwd"))
ifusername=""thenerrmsg="您没有填写用户名,无法登录!
"
ifpwd=""thenerrmsg="您没有填写密码,无法登录!
"
setobjrs=server.createobject("ADODB.recordset")
sqlstr="selectpwdfromuserswhereusernamelike'"&username&"'"
objrs.opensqlstr,objconn,1,1
ifobjrs.eofthenerrmsg="没有该注册用户!
"
ifobjrs("pwd")<>pwdthenerrmsg="密码错误,登录失败!
"
ifisempty(errmsg)thenresponse.redirect("/users/index.asp")
response.write(errmsg&"
")
%>
--#includevirtual="/include/endconn.asp"-->
11、打开index.asp页面设计图下图所示:
12、双击打开userinfo.asp页面,在
标签之间插入如下代码:
--#includevirtual="/include/dbconn.asp"-->
<%
dimuser
dimobjrs,sqlstr
sqlstr="select*fromusers"
setobjrs=server.createobject("ADODB.recordset")
objrs.opensqlstr,objconn,1,1
dowhilenotobjrs.eof
response.write("用户编号:
"&objrs("userid")&"
")
response.write("用户名:
"&objrs("username")&"
")
response.write("用户密码:
"&objrs("pwd")&"
")
response.write("真实姓名:
"&objrs("truename")&"
")
response.write("性别:
"&objrs("sex")&"
")
response.write("邮箱:
"&objrs("email")&"
")
response.write("qq号码:
"&objrs("qqnumber")&"
")
response.write("自我介绍:
"&objrs("userdesc")&"
")
response.write("注册时间:
"&objrs("regtime")&"
")
objrs.movenext
loop
%>
--#includevirtual="/include/endconn.asp"-->
13、完成用户注册模块,保存并进行测试预览。
14、访问计数模块设计
15、打开webcnt.txt页面,删除原有代码,并写入:
注:
里面的内容可进行修改,第一行为总访问数,第二行为日期,第三行为当日访问数。
16、双击打开webcnt.asp页面,删除原有代码,并录入如下代码:
<%
DimobjFS,objFile,cntfile
Dimttlcnt,tdycnt,lastvisitdate,nowdate
nowdate=Date
cntfile=Server.MapPath("/counters")&"\webcnt.txt"
SetobjFS=Server.CreateObject("Scripting.FileSystemObject")
SetobjFile=objFS.OpenTextFile(cntfile,1,True,0)
IfobjFile.AtEndOfLineThen
ttlcnt=1
tdycnt=1
lastvisitdate=nowdate
Else
ttlcnt=CLng(objFile.ReadLine)
lastvisitdate=CDate(objFile.ReadLine)
tdycnt=CLng(objFile.ReadLine)
EndIf
IfSession("counted")<>TrueThen
ttlcnt=ttlcnt+1
Ifnowdate<>lastvisitdateThen
lastvisitdate=nowdate
tdycnt=1
Else
tdycnt=tdycnt+1
EndIf
Session("counted")=True
SetobjFile=objFS.OpenTextFile(cntfile,2)
objFile.WriteLine(ttlcnt)
objFile.WriteLine(lastvisitdate)
objFile.WriteLine(tdycnt)
EndIf
SetobjFile=Nothing
SetobjFS=Nothing
Response.Write("您是本站第"&ttlcnt&"位访客")
Response.Write("本站今日共有"&tdycnt&"位访客")
%>