、文章
搜索、论坛短消息。 3.版主: 4.管理员:除
会员基本功能外, 可对所有版块的文章进行固顶,加精,删除等, 并且有论坛设置修改权限。
3
系统总体设计 3.1 关键技术
3.1.1 ASP 技术 ASP 技术是一种类似 HTML(Hypertext Markup Language 超文本标识语言)、Script 与 CGI(Common Gateway Interface 通用网关接口)的结合体,简单的讲它是一种运行于服务器 的脚本语言,但是其运行效率比 CGI 更高、程序编制也比 HTML 更方便且更有灵活性,程序 安全性及保密性也远比 Script 好。 其特点归纳如下: 1. ASP 可以和
HTML 或其他脚本语言(VB Script 与
Java Script)互相嵌套。 2. ASP 是一种在 Web 服务器端运行的脚本语言,因此,程序代码完全保密。 3. ASP 以对象为基础,因此可以使用 ActiveX 控件继续扩充其功能。 4. ASP 内置 ADO 组件,因此可以轻松地存取各种数据库,大大缩短了程序开发时间。 5. ASP 可以将运行结果以 HTML 的格式传送至客户端浏览器,因此 ASP 可以适用于各种 浏览器。 3.1.2 数据库技术 在基于微软 IIS/PWS 的网络平台上, 通过服务器端运行的 ASP 程序来访问后台数据库, 是一种最常见的模式了。 而对于小型的数据库应用需求, 微软的 Access 数据库应该是与 ASP
程序配套使用的首选。 由于 Access 数据库的 ODBC 驱动程序支持的 SQL 指令全, 执行效率 高, 所以 Access 后台数据库+ASP 服务器端程序+客户
端 IE 浏览器, 是一个精练实用高效的
组合模式。
3.2
方案选择
3.2.1 数据库需求分析 根据系统功能和数据流程,可以确定一下数据项和数据结构: 1.会员信息:包括会员标示 ID 号,,性别,地址,邮箱,发帖数,人气数等论坛 资料。 2.论坛配置信息:包括创建时间,会员总数,时间等。 3.版块信息:版块说明,版主等。 4.论坛帖子信息:帖子号,作者,内容,发表日期,回复数等。 3.2.2 数据库设计 在编写论坛之前, 首先要规划好论坛的数据库结构。 数据库主要用于保存和管理用户的 个人资料和帖子内容以及发帖数据。留言板系统的数据库设计采用 Access2000 创建一个名 为 forum 的数据库,并在库中创建 DB_User 和 Reply 以及 Topic 的数据表,分别用于保存会 员资料数据和帖子内容以及回复资料的数据,如图 3 所示:
图 3 论坛的数据库结构 3.2.3 数据库的结构定义 forum 数据库中包括 DB_User 和 Reply 以及 Topic 三个数据表,它们的定义如下:
(1) DB_User 表结构 )
表1
DB_User 表
(2) Reply 表结构 )
Reply 表用于保存会员发帖数、内容,其结构如表 2 所示
表2
Reply 表
(3) Topic 表结构 )
3.2.4 数据库的链接 数据库连接操作是一个相当频繁的操作,在 ASP 的数据库编程中,connection 对象是 我们不可能离开的一个对象, 该对象是 ADO 对象模块中的一个专门打开和关闭数据库连接的 对象,在对数据库进行任何的操作,比如更新记录,插入,删除,检索等,都必须以 conne ction 对象的建立为前提。形象地来说,connection 对象就是程序与数据库沟通的管道,所 有对数据库的操作,都必须经过它,因此,本系统首先建立一个 connection 对象的实例变 量,然后才能在它的基础上建立 Recordset 对象实例来操作数据库。这里首先利用 connect ion 对象的属性 ConnStr 设置数据库的连接方式,使用的是 Access OLE DB 驱动程序。 本设计还使用了 server 对象的 Server.MapPath(Path)方法,作用是将(path)指定 的虚拟路径转换为实际路径,大大提高了本系统的移植性。然后使用 server.createobject 方法建立 connection 对象的实例变量 conn, 使用 connection 对象的 Open 方法打开数据库 连接,核心代码如下: <% set conn=server.CreateObject("ADODB.Connection") sql="Driver={Microsoft Access Driver (*.mdb)};DBQ=" &; Server.MapPath("database/forum.mdb") conn.open(sql) %>
4 详细设计(代码