动态网页程序设计报告(留言板)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“动态网页程序设计报告”。
留言板
摘要:
本课程设计的对象是一个留言板。本留言板有两个方向,五大模块,七大功能。五大模块:显示留言,删除留言,添加留言,版主登陆,用户登陆留言。七大功能:显示留言,删除留言,添加留言,利用数据库存取组件,将信息保存到数据库中,登陆,用户登陆留言。在主界面中选择你的身份进行登录,用户或版主可以在主界面留言界面输入要留言的内容,当点击提交按钮时,数据会插入并存储到数据库中。当点击回复时,界面会跳转到回复界面,在回复界面回复后,点击提交,又会跳转到留言主界面里显示。当点击删除时,输入密码后会删除该条信息,并返回留言主界面。关键字:
主界面;用户身份;提交按钮;显示留言;数据库;留言回复界面;显示留言回复;留言删除界面;密码;登陆;注册
1.课程设计介绍
本课程设计是一个动态的网页设计—留言板,并用JavaScript作为脚本语言。设计的文件主要包括:一个用户身份登录界面(index.asp),一个用户留言界面(liuyanzhe.asp),一个数据库及表(guest.mdb),一个主界面(index1.asp),一个插入界面(add.asp),一个删除界面(delete.asp),一个留言回复界面(readd.asp),一个函数文件(funtion.asp)用来保存在各页面中用到的函数,一个样式文件(guest.asp),一个配置文件(config.asp),一个数据库链接文件(odbc_connection.asp)。
当用户在地址栏里输入地址,进入到版主身份选择界面,用户可以进行版主或者留言者(过客)的身份的选择。当用户为过客时,仅仅能进行留言操作。当用户以版主的身份登录时,必须进行版主身份验证方可进入留言主界面,在此版主可以进行恢复删除等操作来管理自己的留言板,在版主登陆后,界面最上部分是访问次数。界面中上半部分是为留言者留言的地方。当输入留言信息点击提交按钮时,客户端会根据你提交的留言信息进行核对,若留言主题、留言人姓名和留言者email格式没有按规定填写则会给用户以信息提示。填写完整留言板并提交后,便提交到插入界面,使留言信息通过调用update语句而写入到数据库guest中。主界面的中下半部分是用来显示留言内容的,当留言信息插入到数据库后,主界面通过服务器执行来select语句调用数据库的信息,并显示出来,以供留言人查看。界面的下部是用来分页显示的。
需要留言回复时,点击回复连接,跳转到留言回复界面。留言回复界面通过回复的留言id号来获取留言主题,填写好回复内容和密码时,点击提交按钮,若密码正确则通过update语句写入数据库中,若不正确则不能写入数据库并给予必要的提示信息。当正确输入密码通过调用select语句将留言回复信息显示到主界面上。
当点击主界面上的删除连接时,会跳转到删除界面此时也获取了该条信息的id号。因为删除涉及到管理员的权限,故需要管理员输入密码后才能删除留言。当输入密码后,点击提交按钮,会执行delete语句来删除数据库中的该条留言信息,然后更新数据库执行select语句并显示到主界面上,以供查看是否删除此条信息。
当用户在地址栏里输入地址,进入到留言者身份选择界面时,过客(留言者)正确留言后会给予提示不能再做其他非法操作。
本设计用到了分页技术来管理由于留言条数太长而带来的不便,并且将按照留言的时间先后进行排序显示,并把留言提交给版主。
2.基本原理或方法
本课程是以留言板形式为主题设计,主要是通过对数据库的操作来完成留言信息的写入,读取,更新,存储。
设计动态网站必须要有与数据库的连接操作。
1)、本课程设计的网站与数据库acce的链接代码如下: <% Dim db Set db=Server.CreateObject(“Adodb.Connection”)db.Open “Driver={Microsoft
Acce
Driver
(*.mdb)};Dbq=”
& Server.Mappath(“guest.mdb”)%> 2)、插入库留言信息到数据代码如下: <% Dim title,body,name,email title=myReplace(request.form(“title”))body=myReplace(request.form(“body”))name=myReplace(request.form(“name”))email=myReplace(request.form(“email”))2 Dim sqla,sqlb,strsql sqla = “Insert Into guest(name,title,submit_date” sqlb = “values('” & name & “','” & title & “',#” & Now()& “#” If body“” Then sqla = sqla & “,body” sqlb = sqlb & “,'” & body & “'” End If if email“” then sqla = sqla & “,email” sqlb = sqlb & “,'” & email & “'” end if strsql = sqla & “)” & sqlb & “)” db.Execute(strsql)db.Close Set db=Nothing Seion(“page_no”)=1 response.redirect “index.asp” %> 3)、写入回复到数据库代码如下: <%
If Request.Form(“paword”)=Paword Then Dim strSql strSql=“Update guest Set reback='” & myReplace(request(“reback”))& “' where id=” & Request.Form(“id”)
db.execute(strSql)response.redirect(“index.asp”)Else Response.Write “
请输入正确的密码” end if %>4)、在主界面显示留言信息需要用到Recordset类,为其建立一个对象来获取数据库表中的信息。设计代码如下:
Dim rs,strsql
'建立Recordset对象,因为要分页显示数据,所以请注意Open方法的参数 Set rs=Server.CreateObject(“ADODB.Recordset”)strsql =“Select * From guest Order By Submit_date Desc” rs.Open strsql,db,1 5)、在主界面留言显示的主题、内容、留言人、留言日期、回复内容的代码如下: 主题:<%=rs(“title”)%> 内容:<%=rs(“body”)%> 留言人:<%=rs(“name”)%> 留言人的email地址以及点击时会调用outlook软件来发送邮件。代码如下:
href=“mailto:<%=rs(”email“)%>”><%=rs(“email”)%> 留言日期:<%=rs(“submit_date”)%> 回复内容:<% Response.Write rs(“reback”)%>。点击时会将跳转到删除界面,并将id号一并传给删除界面代码如下:<%
Response.Write “删除此条留言”%> 6)、在主界面中用到了脚本语言及其函数function check_Null()来对输入的留言信息对比判断。代码如下:
function check_Null(){
if(document.form1.title.value==“”){ alert(“主题不能为空!”);return false;
} if(document.form1.name.value==“”){ alert(“姓名不能为空!”);return false;
} if(document.form1.email.value==“”){ alert(“请输入email地址!”);return false;
}
var rule=/^([w-]+(?:.[w-]+)*)@((?:[w-]+.)*w[w-]{0,66}).([a-z]{2,6}(?:.[a-z]{2})?)$/i;
<% '--------if(!rule.test(form1.email.value)){ alert(“请输入有效的email地址!”)return false;} if(document.form1.title.value.length>100){ alert(“主题不能超过100个字符”);return false;
} if(document.form1.name.value.length>30){ alert(“姓名不能超过30个字符”);return false;
} return true;}7)、分页技术的使用,代码如下:
------------
'以下开始显示原有留言 Dim rs,strsql '建立Recordset对象,因为要分页显示数据,所以请注意Open方法的参数 Set rs=Server.CreateObject(“ADODB.Recordset”)strsql =“Select * From guest Order By Submit_date Desc” rs.Open strsql,db,1 '如果记录集是空的,就停止运行程序,如果非空,就分页显示 If rs.Bof Or rs.Eof Then Response.Write “
暂时没有留言” Response.End Else '下面一段判断当前显示第几页
多少条
Dim page_no If Seion(“page_no”)=“” Then
'如是第一次打开,为1 page_no=1 Seion(“page_no”)=page_no Elseif Request.QueryString(“page_no”)“” Then
'如果选择了页码,就令其为指定页码
page_no=Cint(Request.QueryString(“page_no”))Seion(“page_no”)=page_no Else '其它情况下,则从Seion中读取原来的页码 page_no=Seion(“page_no”)End If '下面一段开始分页显示,指向要显示的页,然后逐条显示当前页的所有记录。rs.PageSize=PageSize '从config.asp读取参数设置,每页显示
rs.AbsolutePage=page_no '设置当前显示第几页 Dim I '该变量用来控制显示当前页记录 I=rs.PageSize Do While Not rs.Eof And I>0 '循环直到当前页结束或记录集结尾
I=I-1 %> 3.结果和结果分析
登陆界面如图1所示:
留言板版主的验证面如图2所示:
留言板的版主的登陆界面如图3所示:
留言板的留言者的登陆界面如图4所示
留言板的回复界面如图5所示:
留言板的删除界面如图6所示:
留言时为正确填写信息会弹出信息框。如图7所示
留言时为正确填写email信息会弹出信息框。如图8所示
留言后如图9所示:
留言恢复之后如图10所示:
删除留言后如图11所示各网页文件之间的关系如图12所示:
4.带注释的程序清单
Index.asp里得注释: '以下开始显示原有留言 Dim rs,strsql '建立Recordset对象,因为要分页显示数据,所以请注意Open方法的参数
Set rs=Server.CreateObject(“ADODB.Recordset”)strsql =“Select * From guest Order By Submit_date Desc” rs.Open strsql,db,1 '如果记录集是空的,就停止运行程序,如果非空,就分页显示
If rs.Bof Or rs.Eof Then Response.Write “
暂时没有留言” Response.End Else '下面一段判断当前显示第几页
Dim page_no If Seion(“page_no”)=“” Then '如是第一次打开,为1
page_no=1 Seion(“page_no”)=page_no Elseif Request.QueryString(“page_no”)“” Then '如果选择了页码,就令其为指定页码
page_no=Cint(Request.QueryString(“page_no”))Seion(“page_no”)=page_no Else '其它情况下,则从Seion中读取原来的页码
'下面一段开始分页显示,指向要显示的页,然后逐条显示当前页的所有记录。
多少条
<%
page_no=Seion(“page_no”)End If rs.PageSize=PageSize '从config.asp读取参数设置,每页显示
rs.AbsolutePage=page_no '设置当前显示第几页 Dim I '该变量用来控制显示当前页记录 I=rs.PageSize Do While Not rs.Eof And I>0 '循环直到当前页结束或记录集结尾
rs.MoveNext Loop '下面一段在下方显示页数信息,从1到总页数循环,如不是当前页,就加上超链接
接
链接
Response.Write “” & I & Response.Write I & “ ”
Response.Write “
请选择数据页: ” For I=1 To rs.PageCount If I=page_no Then '如是当前页,就不加超链Else '如不是当前页,就加上超“ ”
End If Next End If %> Readd.asp里的注释: <%
Delete.asp里的注释: <%
数据库连接注释:'获取传递过来的记录编号和主题 dim id,title id=Request.QueryString(“id”)title=Request.QueryString(“title”)%> '获取传递过来的要删除的记录编号id Dim id id=Request.QueryString(“id”)%> <% '******************************************** '这是数据库连接文件,专门用来连接数据库 '******************************************** Dim db Set db=Server.CreateObject(“Adodb.Connection”)db.Open “Driver={Microsoft
Acce
Driver
(*.mdb)};Dbq=”
& Server.Mappath(“guest.mdb”)%>
5.使用说明
双击打开站点里的小旋风服务器,在地址栏里输入127.0.0.1会出现index.asp的主界面,让你选择你的身份。当以过客身份验证时,点击留言者登陆,只能留言板留言,不能进行其他操作。当以版主身份登陆时,先输入身份验证后在主界面的中上方有个留言板,你可以在此留言。留言者看好留言要求,否则将不能正确留言。留言者写好留言信息后,点击“提交”按钮,留言信息会出现在下方显示留言的地方。如留言人若想重新写一封留言信息则可点击“重置”按钮,界面上留言人刚才所写的信息将全部消失,以便使留言者重新再写入留言信息。在显示留言的地方,拥有留言板的板主可以再此对留言人进行回复删除等操作。即:点击“回复此条留言”则会跳转到留言回复界面,在此界面板主可以进行留言答复,但是一定要正确输入密码之后方可进行留言答复,否则不能给予留言回复功能。回复信息填写完毕后点击“提交”按钮则会返回到主界面,并显示版主刚才的回复信息。若版主要删除某条留言,则在主界面上要删除的信息条上点击“删除此条信息”链接,会跳转到删除界面,版主输入密码后点击“提交”按钮,如密码错误则不会删除此留言并给予提示信息,只有在正确输入密码后点击提交按钮才能返回主界面并删除版主要删除的留言信息。
如若,版主想通过电子邮箱的方式给留言者发送信息则在主界面的中下方留言人的email栏中单击其电子邮件链接即可调用outlook让版主填写信息并发送以邮件的方式发送给某个留言者。
6.总结设计体会和致谢
本课程设计的绝大部分内容是由本人通过认真听课、在图书馆翻阅各种有关资料及在网络上搜索的各种信息资料,最后总结而成的成果。在搜索信息的过程中,本人的老师、舍友以及本人的同班同学与我共享了许多有用的资料。本人的课程设计能在规定的时间内完成,特别要感谢我的老师以及我的同学!
7.参考文献和站点
[1]Dreamweaver8+asp动态网站开发从入门到精通 刘瑞阳 黎卫东 黄炳强编著 人民邮电出版社2006.7 [2]ASP网络编程基础 蒲鹏 陈慧 编著 清华大学出版社 北京交通大学出版社 2009.12 [3]博彦科技.编程高手ASP[M].北京大学出版社,2000.94-97 [4]王冬青.网络课程设计与开发的思考[J].中国电化教育.2002.10 [5]上海科技网.量子计算机[OL].2003.04.01 http://www.daodoc.com/learning/leon/xinxi/20030401/leon.asp
动态网页说课稿《动态网页制作基础技术》课程是中专计算机专业学生必修课程之一,也是难度系数较大的一门专业课程之一。根据我所带的班级的实际情况,计划有针对性的对部分知识......
安徽商贸职业技术学院经贸系电子商务(2008级)动态网页设计设计时间:2010年6月14日 至 6月18日设计地点:电子商务实训室二班级:电子商务082班姓名:周 海 强一、实训目的与意义通......
刀豆文库小编为你整合推荐3篇动态网页制作简历,也许这些就是您需要的文章,但愿刀豆文库能带给您一些学习、工作上的帮助。......
《动态网页设计》课程教学大纲一、课程性质、目的课程性质:本课程是计算机各专业的必修课程,是Web开发的核心课程之一,着重讲解ASP以及数据库系统(Acce或SQL Server)的应用,以及动......
一、教学目标:1、知识目标(1)了解动态HTML,动态网页的概念(2)能够实现简单的动态HTML效果,能够插入简单的javascript代码 (3)掌握动态网页的特性2、能力目标(1)培养学生的探究学习能力......