留言板系统.docx
- 文档编号:29925958
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:18
- 大小:110.03KB
留言板系统.docx
《留言板系统.docx》由会员分享,可在线阅读,更多相关《留言板系统.docx(18页珍藏版)》请在冰豆网上搜索。
留言板系统
留言板系统
留言板系统
【摘要】:
随着Internet的发展,网站的作用越来越重要,被称之为继广播、报纸、杂志、电视后的第五种媒体——数字媒体,拥有众多优势,所以现在不少企业都有或正在建设自己的网站。
而留言板作为网站重要的一个部分,从来就是一个大家交流的平台!
留言板是一种最为简单的BBS应用,借助留言板,浏览者可以张贴留言的方式给站长、版主或其他浏览者进行留言和提问。
本文主要介绍留言板系统的设计思路和制作过程,从留言板的重要性开始,介绍我的留言版采用的ASP技术和SQL语言以及ACCESS数据库,进而阐述整个留言板系统的制作过程和具体的设计思路。
该留言板较全面地利用asp技术实现留言板的基本功能:
留言、回复、删除,并增加了一些特色功能。
最后介绍自己在设计过程的心得体会。
【关键字】:
留言板,ASP,SOL,ACCESS数据库
随着网络技术的飞速发展,兴起了网络的热潮,一些公司正在积极建立自己的网站,一些大学也已经开设了网络相关的专业及课程。
同时网站的重要性也越来越重要。
而作为网站中交流的中心,留言板起到了至关重要的地位。
它有助于版主收集网站的反馈信息,也是客户通过网络收集信息的有力工具。
留言板在一个网站具有很重要的地位,随着上网的普及,留言板已经不是什么新鲜事物了。
本文主要介绍了用ASP技术和ACCESS技术来创建留言板的整个过程和代码的设计!
本留言板更注重安全和与网站融合,但也有自己独特之处。
相信通过本文的介绍,很快就学会了留言板的制作。
一、留言板介绍
1.1留言板的介绍
留言板是一种电子便签管理系统,是用ASP或其它脚本语言编写的网络应用程序。
在网络用户交流中起很大的作用,每个人都可以将他的资料和要求等信息保留在页面上,以供他人观看。
留言板供其他网友给自己留言,或者临时存放自己的感受。
留言操作相对简单,在您进入网站后,进入任何一个留言板或社区均可以看到有输入框,输入后提交即可。
留言板提供完备的信息发布功能,在网络用户交流中也有很大的作用。
而我的这个留言板仅仅是简单的留言和管理员对留言板进行设置和进行回复、删除管理的工具。
该留言板简单但实用,而且具备了大多数留言板的基本功能。
十分适合于中小型网站使用。
二、留言板设计技术的相关原理
该留言板的整体设计遵循软件工程的方法,经过技术分析、总体设计、详细设计等。
而首先就应该进行技术可行性分析并选择适当的技术。
由于ASP技术发展已经比较成熟,而且使用人数也相当多,所以该系统主要采用ASP、SQL技术。
下面就对这两种技术做一个概述。
2.1ASP技术介绍
2.1.1ASP:
MicrosoftActiveServerPages即我们所称的ASP,其实是一套微软开发的服务器端脚本环境。
ActiveServerPage是创建动态网页的一个很好的工具,它起一种编程语言的作用,可以利用它编写动态产生HTML的程序代码。
而且ASP也是服务器端脚本环境,可以用来创建交互式WEB页并建立强大的的Web应用程序。
因此,只要用户浏览Web站点并请求一个ASP页,Web服务器就可以处理相应的ASP代码,生成HTML代码,然后将它传递到用户浏览器并显示出网页。
ASP内含于IIS4.0和5.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。
有了ASP就不必担心客户的浏览器是否能运行所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。
当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
2.1.2ASP技术的优点:
作为网络上十分流行的编程语言,一定会具有很多独特之处,而ASP也不例外,它具有以下优点:
1、编写程序方便。
您可以用VBScript或JScript创建脚本,同时结合HTML语言就能够非常方便地完成网站的应用程序。
对于VBScript和JScript,使用哪种语言并不重要,Web服务器等同地处理这两种语言,并向用户的浏览器发送HTML格式化结果。
由于ASP采用Script语言,就可以轻松编写程序,因此这就大大节省了网络设计人员又得重新学习一种新语言的时间。
而且编写ASP无须手工compile编译或链接程序,可在服务器端直接执行,这无疑是更加方便了我们的编写过程。
2、使用编程环境方便简单。
可以使用普通的记事本之类的文本编辑器,即可进行编辑设计,如:
Windows的记事本、FrontPage等文本编辑器。
也可以用dreamweaver和专业的MicrosoftVisualInterDev开发工具。
3、浏览网页方便,交互速度也快。
ASP是运行在服务器端,所以我们无须担心浏览器是否支持ASP所使用的编程语言,用户端只要使用可执行HTML码的浏览器,即可浏览ActiveServerPages所设计的网页内容。
ASP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。
4、提供多种编程语言。
ASP能与任何ActiveXscripting语言相容。
除了可用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如Perl等。
5、提高代码的安全性。
ActiveServerPages的程序代码隐藏,已编码的脚本在运行时由脚本引擎解码,因此不需要单独的应用程序。
客户端上仅可以看到由ASP输出的动态HTML文件。
因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
6、功能强大。
编程是面向对象的(Objectoriented),并可扩展ActiveXServer组件功能。
ActiveXServerComponents(ActiveX服务器组件)具有无限可扩充性。
你可以使用任何编程语言来编写你所需要的ActiveXServer组件。
可以使用VisualBasic、Java、VisualC++、COBOL等编程语言来编写你所需要的ActiveXServerComponent。
也可以使用第三方组件或自己开发的ActiveXServer组件。
理论上说,可以实现任何功能。
7、访问数据库十分方便。
可以通过ADO(ActiveXDataObjects,微软的一种新的数据访问模型,是一种可以提供WEB页面开发者轻松存取Internet的数据库,并可以在用户端实现网上立即、即时更新显示的最新WEB页面数据库技术。
)非常方便地访问数据库。
总之,ASP从字面上说,包含三方面含义:
1.Active:
ASP使用了微软的ActiveX技术。
ActiveX(COM)技术是现在Microsoft软件的重要基础。
它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。
ASP本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。
只要你可以在服务器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的WEB应用。
2.Server:
ASP运行在服务器端。
这样就不必担心浏览器是否支持ASP所使用的编程语言。
ASP的编程语言可以是VBSCRIPT和JSCRIPT。
VBSCRIPT是VB的一个简集,会VB的人可以很方便的快速上手。
然而NETscape浏览器不支持客户端的VBSCRIPT,所以最好不要在客户端使用VBSCRIPT。
而在服务器端,则无需考虑浏览器的支持问题。
NETscape浏览器也可以正常显示ASP页面。
3.Pages:
ASP返回标准的HTML页面,可以正常地在常用的浏览器中显示。
浏览者查看页面源文件时,看到的是ASP生成的HTML代码,而不是ASP程序代码。
这样就可以防止别人抄袭程序。
由此可以看出,ASP是在IIS下开发WEB应用的一种简单、方便的编程工具。
在了解了VBSCRIPT的基本语法后,只需要清楚各个组件的用途、属性、方法,就可以轻松编写出自己的ASP系统。
而我这次所开发的留言本系统,主要是利用ASP技术的简单和实用的特点,以及ASP使用的广泛性,而且非常适合于网络中小型系统开发。
2.2、SQL介绍
SQL全称是“结构化查询语言(StructuredQueryLanguage)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEMR开发的一种查询语言,它的前身是SQUARE语言。
SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。
如今无论是像Oracle,Sybase,SQLServer这些大型的数据库管理系统,还是像VisualFoxporo,PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。
SQL广泛地被采用正说明了它的优点。
它使全部用户,包括应用程序员、DBA管理员和终端用户都受益非浅。
其主要特点包括:
1.一体化语言:
用SQL可以实现数据库生命周期中的全部活动,包括简单的定义数据库和表的结构,实现表中数据的录入、修改及查询、维护、数据库重构、数据库安全性控制等一系列操作要求。
2.非过程化语言
SQL是一个非过程化的语言,它不必一步步的告诉计算机“如何”去做,用户只需要说明做什么操作,而不用说怎么做,不必理解数据存储的格式及SQL命令的内部,就可以方便的对关系数据库进行操作。
这不但大大减轻用户负担,而且有利于提高数据的独立性。
3.面向集合的操作方式:
非关系数据库采用的是面向记录的操作方式,操作对象是一条记录。
而SQL语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。
4.灵活、方便
SQL语言既是自含式语言,有是嵌入式语言。
作为内含式语言,它能够独立的用于联机交互的使用方式,用户可以在终端键盘上直接键入SQL命令对数据库进行操作;作为嵌入式语言,SQL语句能够嵌入到高级语言。
例如c程序中,提供给程序员设计程序时使用。
而在两种不同的使用方式下,SQL语言的语结构基本上是一致的。
这种以统一的语法结构提供两种不同的使用方式的做法,提供了极大的灵活性与方便性。
5.语言简洁:
虽然SQL的功能很强大,但由于设计巧妙,语法却很简单,只有很少的几条命令,易学易用是它最大的特点。
三、留言板总体设计
3.1留言板系统的概要设计:
3.1.1系统的开发环境:
基于微软平台ASP环境,使用ACCESS数据库。
适用于IE4.0以上版本浏览器,Win98+PWS、Win2000+IIS或winxp+IIS以上运行环境。
(本人用的winxp+IIS5.1测试)。
3.1.2ASP语言选择:
选择一个好的编程语言十分的重要,当前,面对众多的编程语言,很多人无从选择,而本人看到asp的以上众多特点,个人认为:
Access后台数据库+ASP服务器端程序+客户端IE浏览器,是一个精练实用高效的组合模式。
在这种使用模式中,ASP程序无疑是最重要的,是沟通客户端和后台数据库之间的桥梁。
在ASP程序中,通过VBScript,建立对Access数据库的连接,是客户能够访问后台数据库的前提。
鉴于前面介绍ASP优点的原因,又有上面组合的优势,本人的留言板使用asp语言也是十分正确而实用的。
3.1.3选择Access作为数据库
留言板有了使用环境,接下来就该选择合适的数据库。
由于数据库对整个留言板的管理和运作起到置关重要的作用,所以选择数据库成为了重中之重。
在基于微软IIS/PWS的网络平台上,通过服务器端运行的ASP程序来访问后台数据库,是一种最常见的模式了。
而对于小型的数据库应用需求,微软的Access数据库,应该是与ASP程序配套使用的首选。
而将Access作为我留言板的数据库,也是考虑到了以下几点:
1.Access数据库使用简单,可以迅速掌握。
2.Access数据库的ODBC驱动程序支持的SQL指令全。
ACCESS具有强大的数据库功能,结构简单、理论基础坚实、独立性高。
适合开发中型管理系统。
3.用Access数据库开发的程序转化为SQLServer数据库也非常简单,只要用SQLServer的导入功能将Access数据库转化为SQLServer数据库。
而对于数据库语句,因为采用的是标准的SQL语言,读取Access数据库和读取SQLServer数据库基本上是一样的,只要改写一下连接数据库的语句。
4.整体说来ASP与ACCESS的结合使得系统的开发简单、快捷、操作方便、易于系统管理和系统维护,而且执行效率高,且配置简单、移植方便。
3.2系统的功能:
该留言板具有的主要功能如下:
1、可以按照发言时间的先后顺序,留言板自动排序;
2、友好简洁的管理界面,便于管理员维护留言板;
3、管理员具有回复和删除留言的权限;
4、管理员可以修改留言板页面的名称和网址以及每页显示的留言数;
5、拥有更多留言者的信息,包括名字、地方、QQ号等;
6、留言板系统具有防灌水功能;
7、具有页数跳转功能;
8、具有防止留言客户非法进入管理界面功能;
3.3留言板的主要栏目组成图
有了合适的技术,确定了留言板的功能,应该就此给出整体结构的流程图:
浏览
以下为管理员使用界面
对留言的管理
提交修改
四、留言板详细设计
有了技术和流程图以及留言板要实现的功能,接下来就应该进行详细设计了。
数据库是首当其冲的,接下来就是用户常接触的首页的设计,然后就是该留言板特色功能的设计和实现。
4.1数据库设计
我的数据库采用的是ACCESS数据库,采用的原因也已经介绍了。
以下就介绍留言板数据库的组成。
1.数据库整体介绍:
留言板数据库总共有3张表,具体如下:
数据库表名
说明
表的作用
admin
用来存放管理员的名字和密码
管理登陆
guest
用来存放用户的信息和留言
管理用户信息
information
用来表明该留言板的相关信息
留言板的相关信息
表4-1
2.数据库各个表的介绍:
Admin表存放的是后台管理员的用户名和密码,详细设计如下表所示:
Admin表:
字段名称
类型
说明
id
自动编号
编号
adminname
文本
管理员名字
adminpass
文本
管理员密码
表4-2
表guest:
字段名称
类型
说明
id
自动编号
访客留言编号
name
文本
访客名字
come
文本
访客来自哪里
title
文本
访客留言的主题
oicq
文本
访客的qq号
content
备注
访客留言的内容
reply
文本
版主是否给予回复
dateandtime
日期/时间
访客留言的时间
表4-3
表information
字段名称
类型
说明
id
自动编号
编号
name
文本
留言板名字
Url
文本
留言板主页
home
文本
留言板所在网站主页
num
文本
留言每页显示记录数
badid
文本
屏蔽使用的呢称
badwords
文本
屏蔽使用的字符
表4-4
4.2留言板数据库的连接:
留言板中很多数据例如,管理员登陆时检测名字和密码,进行删除和修改留言时,都需要用到和数据库的连接。
所以应该将与数据库的连接专门作为一个ASP文件,这样不仅方便,而且也增加安全性。
我的这个留言板中,就是以odbc_connection文件作为单独一个ASP文件连接数据库的!
而具体连接数据库的ASP代码见下:
Dimdb,ConnStr
connstr="DBQ="+server.mappath("guest.mdb")+";DefaultDir=;DRIVER={MicrosoftAccessDriver(*.mdb)};"
Setdb=Server.CreateObject("ADODB.Connection")
db.OpenConnStr
而在每个连接数据库的文件中,都加上
--#Includefile="odbc_connection.asp"-->这么一句来简单而又很有模块复用功能的ASP语句,使的整个系统显得更加精干而严紧。
4.3留言板文件夹中文件的介绍:
有了数据库,就应该设计留言板的各个页面。
本留言板由1个文件夹,11个文件组成,简单介绍各文件的作用:
index.asp:
留言板主页,主要功能是进行访客的留言进行回复和删除管理和管理员登陆和注销。
#guest.mdb:
留言板的数据库文件,存放访客和管理员以及留言板的相应信息。
odbc_connection.asp:
留言板与数据库的连接的文件,作为单独的一个ASP文件,适合进行修改和管理。
delete.asp:
删除留言所执行的asp文件。
login.asp:
管理员登陆界面的asp文件。
Logout.asp:
管理员注销退出时执行的asp文件。
admin.asp:
管理员管理留言板界面的asp文件。
adminsave.asp:
对asp进行修改并保存修改的asp文件。
add.asp:
将留言添加到数据库里的asp文件。
Reply.asp:
管理员对留言进行回复的asp文件。
Imq:
存放留言板版面设计中的背景和框架图片。
4.4留言板首页设计:
我留言板的首页文件index.asp,功能主要是为访客留下相关的信息,并进行留言,以及管理员进行删除和回复留言。
界面相对简单,但功能很实用!
留言板的基本功能实现具体如下:
1.在留言中,最重要是要保留留言用户的相关信息和留言内容,我将其放入guest数据库中。
2.对于访客的留言功能,则是交给了add.asp文件执行。
3.对于删除留言功能,我又做了一个delete.asp文件,通过连接数据库,在利用超联接将对留言的删除操作从index.asp转到delete.asp文件中去执行。
4.而对于主页面中的管理员登陆界面,也是通过超连接从index.asp转到login.asp文件中执行的。
5.关于版主的回复,还是通过超连接从index.asp转到reply.asp文件中去执行的。
由于首页是进行修改和查看留言本的主要阵地,是进行一切管理和体现大部分功能的地方,所以特别的重要。
主页中留言的页面如下:
主页中留言中显示的页面如下:
4.5该留言板特色功能说明
1.对于其他留言板而言,该留言板增加了防止灌水功能。
对于灌水功能的实现,主要是考以下asp代码实现的:
posttime=10
ifcint(posttime)<>0then
ifnotisnull(session("posttime"))orcint(posttime)>0then
ifDateDiff("s",session("posttime"),Now()) MessageBox"错误信息: 留言本防灌水功能已经打开,限制"&posttime&"秒内不能重复留言。 response.end endif endif endif ifcint(posttime)<>0then session("posttime")=now() endif 2.在安全方面,许多留言板做了很多加密限制,我则加入了对系统中关键名字的过滤以及在index主界面的删除和回复中设置了权限,防止访客和其他人员对留言进行删除。 而具体来说,对呢称的过滤,先是与数据库中的information表连接,接着从提交的表格中取出相应的信息,然后是用以下asp代码实现的: check_name=txtname badid=split(badid,",") fori=0toubound(badid) ifinstr(check_name,badid(i))>0then MessageBox"错误信息: 您使用了屏蔽的昵称。 " response.end exitfor endif next 而对于删除和回复权限的设置,则是通过先与数据库中admin表连接,然后在login管理员登陆界面中登陆成功后,将管理员的名字保存在cookies里: response.Cookies("adminname")=adminname,在delete.asp文件中加入ifrequest.cookies("adminname")=""then来判断是否是管理员,然后进行删除和回复操作。 这点保证了删除和回复权限,使留言板的安全性又上升了一个档次。 3.对于防止留言不良信息,是各大留言板严禁的,也是促进我国网络健康发展的必要措施。 而对于对不良留言屏蔽的实现,首先是先与数据库中的information表连接,然后是用以下asp代码实现的: check_content=txtcontent badwords=split(badwords,",") fori=0toubound(badwords) ifinstr(check_content,badwords(i))>0then MessageBox"错误信息: 您使用了非法的留言内容。 " response.end exitfor endif next 五、该留言板的特色: 这是我是第一次全面、完整做一个系统,但本人对该系统期望很高,认为有以下几点特色: 1、灵活性好,支持在线对留言本进行维护,支持Cookies,支持[删除留言]和[回复留言]和留言板版面管理的功能。 2.另外,该系统还增加了用户更多的资料,(例如qq和来自哪里)可以使访客和班主可以知道留言人更多信息。 3.而且,本留言板还具有防止在留言中发送不健康文字的过滤功能和防止灌水功能,对网络的健康长期发展十分有益。 4.支持屏蔽用户使用对留言系统不利的呢称和对留言板的权限设置,对留言板系统的安全性有一定提升。 5.而此留言本系统的最大特点是简洁实用,代码很少,安全可靠,可维护性也较强。 结束语: 通过上面的介绍,相信对该留言板整体的构建和各项功能都有了一定的认识,最重要的是学会了留言板的设计以及类似网络的编程,更对实际操作和具体设计流程有了清晰的认识。 该留言板实现了基本功能,并具有自己的特色,例如屏蔽关键字和防灌水功能。 由于该留言板功能实用,而且界面友好,特别适合于中小型网站使用。 对于刚刚接触网络编程人员的信心和兴趣也会有很大提高。 参考文献: [1].尚俊杰,《网络程序设计——ASP》.清华大学出版社,北方交通大学出版社.2002.1 [2].丁广贵,《ASP编程基础与实例》机械工业出版社2003.4 [3].刘瑞新、汪远征、程伯言等编著,《ASP编程基础及应用教程》机械工业出版社2005.2 [4].汪晓平、钟军等编著,《ASP网络开发技术(第二版)》人民邮电出版社.2003.12 [5].邹婷主编,《ASP网络程序员就业实践教程》.中国青年出版总社.2005.4 [6].萨师煊、王珊编著,《数据库系统概论(第三版)》.高等教育出版社2000.2 [7].罗布、西
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 留言板 系统