基于ASP的留言板系统
一 设计思想
当我们在网上冲浪时访问到一个制作精美、内容丰富的网站,会很想将自己的喜爱之情告诉网站的制作人。同样,当我们看到一个不能令人满意的网站时,也会想到将自己的高见留给网站的维护者,希望他们有所改进。这时我们就要用到互动式网络一个重要的功能——留言板。留言板也是网络上提供的一项基本服务,无论是主动地上网提问,或者被动地留下姓名、E-mail、留言及建议等,无不是留言板基本的应用。
留言板是互联网上常见的服务项目之一,除了表达访问者的意见之外,同时也可当成网页所有者和访问者之间沟通的渠道。访问者留下自己的相关资料与建议后,服务器端的ASP一方面储存到文件,另一方面也会将处理的信息显示到客户端的浏览器。
留言板是一个和浏览者交流、沟通的园地,它可以设计得很简单,纯粹只收集观赏者的资料和意见,但也可能很复杂。例如提供查询指定留言的功能,删除留言的功能等,其间的取舍全凭网页开发者的功力及需求而定。
二 系统总体设计
1 功能描述
本留言板系统包含以下几个文件,把这些文件分为两组,一组为留言板系统的应用部分,另一组分为留言板系统的管理部分。
1.1 系统的应用部分
留言板系统的应用部分包括以下文件:
1) 留言板系统的主程序Board.asp
是留言板系统应用的主程序,其显示所有的文章,也就是显示存储在数据库board.mdb中所有文章浏览器,并提供两个超链接。一个超链接供用户发布新文章,另一个超链接用于管理员进入系统的管理界面。
2) 用于向留言板系统发布文章的表单Post.sap
用于发表文章的表单程序,该表单共有四个表单域,其中“name”表单域用于存储用户的姓名,“E-mail”用存储用户的,“Subject”用于存储文章的“标题”,“Message”表单域用于存储文章内容,最后还定义了一个表单隐藏域MessageID,用于获取该文章的表示号。当用户提交表单时。触发其处理程序Postit.asp。
3) Posttit.asp发布用户填写信息的程序,将用户在Post.sap中填写的信息作为文章发布到数据库中,该程序用于向数据库board.mdb的Message表插入一条记录,在该记录被成功插入后,再将浏览器窗口重新定位到Board.asp,以让用户刷新留言板的主页面。
4) 显示所有文章及其相关的子文章Message.asp
浏览文章及其子文章的程序,用于浏览用于浏览留言板中的所有的文章,显示文章发布者,发布的时间、标题并统计每篇文章的答复数。
5) 发表子文章的程序PostSub.asp
用于让用户发表子文章,也就是对留言板中现有的一篇文章的回复,子文章的标题默认为“Re”开头。说明哪些网站属于asp
6) Board.mdb:存储所有文章及用户信息的Access数据库。
7) Adovbs.inc:用于VBScript的包含文件,该文件同ASP文件是放在同一目录下的。
1.2 系统的管理部分
留言板系统的管理部分包括以下文件:
1) Admin.asp:留言板系统的管理界面,可以对文章进行添加和删除;在该页面中,管理员可以看留言板中所有文章还可以点击“删除文章”超链接来删除任意一篇选中的文章,同时还能够以管理员身份发表文章。
2) AdminPost.asp:同Post.asp相同,其唯一不同之处在于可以使用指定的颜来发表文章,用于发布管理文章的程序,让管理员发布站点的管理文章,当管理员提交文章后,表单处理程序Adminpost被触发。
3) AdminPostit.asp:用于将AdminPost.asp信息发布到数据库中;将Adminpost所提交的信息写入到数据库的Message表中并能够在信息被写入后, 重新定向到Admin.asp中。
4) AdminMessage.asp:显示所有的子信息,利用该程序删除和添加信息,并且可以在文章中使用特殊的颜,就是以管理员身份浏览文章的界面,同前面所介绍的Message.asp有些相似,只是在AdminMessage.asp中,管理员在浏览文章的同时,还有对文章进行删除的权限。
5) AdminPostSub.asp:发布用户在AdminMessage.asp中填写的所有数据发布到数据库中;发布管理子文章程序,用于发表对管理文章的答复。
6) 删除选中的文章及子文章Delete.asp
用于让管理员删除留言板中的一篇文章。
7) 系统的登陆界面Login.asp
管理系统登录界面,它提供了一个表单,用户输入用户名和口令后,表单处理程序Check.asp将会被触发,并对用户输入的信息进行校验。
8) 退出登陆界面Logout.asp
当管理员完成对留言板的管理任务,想要退出BBS时,既点“退出系统”超链接,该程序将被执行,它将用于身份验证标识的Cookies变量强制失效,并重新定向Login.asp。
9) 验证用户身份Check.asp
该程序从表User中判断用户输入的信息是否正确,如正确,则写入一个Cookies变量Skywolf.Userid并将浏览器重新定向到Admin.asp中,否则浏览器将被重新定向到Login.asp让用户重新输入信息。
2 开发工具的选用及介绍
2.1 简介ASP语言
ASP是由静态的HTML和动态的ASP代码组成,采用ASP的一个很大的优点就是,可以在客户端中包含你的服务器端脚本的运行结果。为了能够区分代码的起始位置和终止位置,在ASP中是使用 <% ASP Code %>来标识,其中‘<%’是ASP代码的起始的标记;‘%>’是ASP终止的标记;‘ASP Code’就是任意的ASP代码。
2.2 ASP的优势
Active Server Pages:“动态服务器网页”,一般简称为“ASP”,ASP之所以能受到大家的重视与使用的原因,主要在于所产生的执行结果都是标准的HTML格式,而且这些程序是在网络服务端中执行,使用一般的浏览器(如IE 或Netscape)都可以正确地获得ASP的“执行”结果,并且将这ASP执行的结果直接在浏览器中“浏览”。 通吃各家浏览由于ASP程序是在网络服务器端中执行,执行结果所产生的HTML文件适用于不同的浏览器。
2.3 ASP的特点
任何的开发工具皆可使用,ASP只要使用一般的文书编辑程序,如Windows记事本,就可以编辑。当然,其他网页发展工具,例如,FrontPage Express、 FrontPage等也都可以。
2.4 语言相容性
ASP与所有的ActiveX Script语言都相容,除了可结合HTML,VBScript、JavaScript、Active X服务器组件来设计外,并可经由“plug-In(外挂组件模组)的方式,使用其他厂商(Third Party)所提供的语言。
2.5 隐密安全性
如果我们在浏览器中直接查看网页的原始代码,就只能看到HTML文件,原始的ASP程序代码是看不到的!这是因为ASP程序先于网站服务(Web Server)端执行后,将结果转换成标准HTML文件,再传送到客户端(Client)的浏览器上,因此,我们所辛苦撰写的ASP程序并不会轻易地被看见进而被盗用。
2.6 操控数据库
ASP可以轻易地通过ODBC(Open Database Connectivity)驱动程序连接各种不同的数据库,例如:Access、Foxpro、dBase、Oracle等等,另外,ASP亦可将“文本文件”或是“Excel” 文件当成数据库用。
2.7 面向对象学习
ASP具备有面向对象(Object-Oriented)功能,学习容易,ASP提供了五种方便能力强大的内建对象:Request、Response、Sever、Application以及Session,同时,若使用ASP内建的“Application”对象或”Session”对象所撰写出来的ASP程序可以在多个网页
之间暂时保存必要的信息。
3 有关ASP和数据库连接
3.1 ASP访问数据库的原理
ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序。当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript 或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,因而ASP源程序不会泄密,增加了系统的安全保密性。此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。
3.2 ASP页面的结构
ASP的程序代码简单、通用,文件名由.asp结尾,ASP文件通常由四部分构成:
1) 标准的HTML标记:所有的HTML标记均可使用。
2) ASP语法命令:位于<% %> 标签内的ASP代码。
3) 服务器端的include语句:可用#include语句调入其它ASP代码,增强了编程的灵活性。
4) 脚本语言:ASP自带JScript和VBScript两种脚本语言,增加了ASP的编程功能用户也可安装其它脚本语言,如Perl、Rexx等。
3.3 ASP的内建对象
ADO原名为ActiveX Data Object。通过与ASP的结合,可以在网页里执行SQL(Structured Qurey Language,结构化查询语言)的指令,用户可以轻松且快速地存取、增加或是删除数据库的数据。ADO包含三个主要的对象:Recordset.Connection以及Command。通过这些对象的了解与应用,再利用ASP对象(Session,Application,Request,Response以及Server),就可以很容易地制作出一个方便快捷、功能多样的留言板。 快速、容易和节省磁盘是ADO的特性,这使得ADO成为十分热门的技巧。ADO通过与ODBC的链接,可以链接许多各种类型的数据库,因为ODBC本身就支持许多种类型的数据库,在本文里所使用的Access。 ADO通过VBScript或者是JavaScript语言的技巧,不但可以控制存取数据库,还可以达到一些特殊技巧的变化。
ASP提供了六个内建对象,供用户直接调用:
1) Application对象:负责管理所有会话信息,可用来在指定的应用程序的所有用户之间共享信息。
2) Session对象:存贮特定用户的会话信息,只被该用户访问,当用户在不同WEB页面跳转时,Session中的变量在用户整个会话过程中一直保存。Session对象需cookie支持。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论