《管理信息系统A》
实验指导书三
ASP动态网页设计
实训1简单BBS,用户注册
1.1实验目的和要求
掌握用户注册的流程。
掌握查询语句和插入语句的格式和用途。
1.2实验重点和难点
注册流程。
SQL语句的使用。
1.3实验内容
制作BBS的用户注册功能。
1.4实验步骤
数据库设计。
1、新建一个空白数据库BBS.MDB。
2、根据我们所要保存的内容来设计数据库。用户表需要保存相应的用户信息。包括用户名,密码,性别,头像,QQ,回密码问题,回密码答案。数据库设计如下表。数据表名User。
字段名 | 数据类型 | 大小 | 备注 |
User | 文本 | 100 | 用户名 |
Psw | 文本 | 50 | 密码 |
Sex | 文本 | 10 | 性别 |
Face | 文本 | 50 | 头像 |
QQ | 文本 | 50 | QQ号 |
Question | 备注 | 密码提示问题 | |
Answer | 备注 | asp 字符串转数组密码提示答案 | |
注册流程分析,见图1-1。
前台注册页面,Reg.asp的制作,如图1-2。
1、包括用户名,密码,性别,头像,密码提示问题,密码提示答案。
2、表单Action属性:Action=” T_Reg.asp”。
3、表单各组件名字和值。建议名字和相应数据表的字段名一致,方便编程,也方便记忆。
i.1:User,2:PSW,3:password,4:Sex,值:男,女,5:face,值:相应头像图片的相对路径,例如:face/1.gif,6:QQ,7:Question,8:Answer。
图 11
图 12
后台处理注册信息页面,T_Reg.asp.
1、如何判断用户名是否已被注册
i.要判断用户名是否被注册,就是要看看用户所输入的用户名在数据库里面存不存在,也就是判断执行查询语句之后所返回的查询结果是否为空。
ii.查询结果为空,也就是记录集对象为空,也就是用户名不存在,也就是可以注册的情况。
iii.如何判断记录集对象为空:如果Rs.Eof And Rs.Bof 成立,即记录集对象为空,即用户名不存在,可以注册
2、JavaScript代码给出相关提示和相应功能。
i.<script>alert('提示内容');</script>,弹出对话框。
ii.(-1),后退功能。
iii.location.href='网页名字',重定向到指定网页。
<%
user = Request.Form("user")’获取用户名
psw = Request.Form("psw")’获取密码
password = Request.Form("password")’获取第二次输入密码
sex = Request.Form("sex")’获取性别
face = Request.Form("face")’获取头像
QQ = Request.Form("QQ")’获取QQ
question = Request.Form("question")’获取密码提示问题
answer = Request.Form("answer")’获取密码提示答案
if psw = password then’判断两次输入密码是否一致,一致可以注册,不一致给出提示
Set Conn = Server.CreateObject("ADODB.Connection")'创建连接对象Connection对象实例
ConnStr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("BBS.mdb")'指定连接字符串
Conn.Open ConnStr'用连接对象的Open方法来打开数据库连接
SqlStr = "Select User From User Where User='"&user&"'"'查询User表里是否有相同记录
Set Rs = Conn.Execute(SqlStr) '执行SQL语句,并赋给记录集对象RS
if Rs.Eof And Rs.Bof then’判断用户名是否存在
Sql = "Insert Into User (User,psw,sex,face,qq,question,answer) values ('"&user&"','"&psw&"','"&sex&"','"&face&"','"&QQ&"','"&question&"','"&answer&"')" '插入SQL语句,把用户信息写到User表里。
Conn.Execute Sql’执行SQL语句
Rs.close'关闭记录集对象
conn.close'关闭连接对象
Set Conn = nothing'释放资源
Response.write "<script>alert('注册成功!!!请登录!!!');location.href='login.asp'</script>"’给出提示,重定向到登录页面
else
Response.write "<script>alert('用户名已经被注册,请重新输入');(-1)</script>"’给出提示,后退到注册页面
end if
else
Response.write "<script>alert('两次密码不一致。');(-1)</script>"’给出提示,后退到注册页面
end if
%>
实训2简单BBS,用户登录
2.1实验目的和要求
掌握用户登录的流程。
掌握查询语句格式和用途。
加深对查询语句的认识。
2.2实验重点和难点
用户登录的流程。
查询语句的应用。
2.3实验内容
制作BBS的用户登录功能。
2.4实验步骤
登录流程分析。见图2-1。
图 21
前台登录网页,Login.asp。界面见图2-2。
1、包括用户名,密码,登录按钮。用户注册和忘记密码的超链接,链接到相应的网页。
2、表单Action属性,Action=”T_Login.asp”。
图 22
后台处理登录数据网页,T_Login.asp。
1、如何判断用户是否可以登录。
i.要判断用户是否可以登录,就是要看看用户所输入的用户名和密码在数据库里面存不存在,也就是判断执行查询语句之后所返回的查询结果是否为空。
ii.查询结果为空,也就是用户名或密码不正确,不可以登录,查询结果不为空,也就是用户名和密码正确,可以登录。
iii.如何判断记录集对象为空:如果Rs.Eof And Rs.Bof 成立,即记录集对象为空,不可以登录情况,反之Rs.Eof And Rs.Bof 不成立,即记录集对象不为空,可以登录。
2、登录成功之后,用户名如何保存。
i.利用Session变量来保存登录成功的用户名,作为一个判断的标准。Session变量不为空,则表示已登录,Session变量为空,则表示未登录。
<%user = Request.Form("user")
psw = Request.Form("psw")
Set Conn = Server.CreateObject("ADODB.Connection")
ConnStr = "Driver={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("BBS.mdb")
Conn.Open ConnStr
SqlStr = "Select * from User Where User='"&User&"' And psw='"&Psw&"'"’根据用户名和密码去User表里面查询,是否有相同记录。
Set Rs = Conn.Execute(SqlStr)
if Rs.Eof And Rs.Bof then’判断是否有相同记录,有,可以登录,没有,不可以登录
rs.close
conn.close
Set Conn = nothing
Response.write "<script>alert('用户名或密码错误!!!');(-1)</script>"
else
rs.close
conn.close
Set Conn = nothing
Response.write "登录成功"
Session("user") = user’登录成功,把用户名保存在Session("user")里面。
Response.Redirect "welcome.asp"
end if%>
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论