论坛的设计与实现毕业论文

辽宁职业学院毕业论文

论坛一般存在两种用户:注册用户和管理员。用户的权限是向下覆盖的,即上级权限包含下级权限。这样论坛的基本功能就可以从各种需求中筛选出来了,即发帖、浏览帖子、回帖。基本功能就是构成论坛系统的必要功能,具备这些功能的Web系统即是论坛。

论坛一般存在两种用户:注册用户和管理员。用户的权限是向下覆盖的,即上级权限包含下级权限。这样论坛的基本功能就可以从各种需求中筛选出来了,即发帖、浏览帖子、回帖。

帖子:帖子是论坛的基本,其功能是最多最复杂的,但仍然可以分为两个模块,根据操作对象来区分。如表4-4所示:

表4-4 帖子功能模块列表

模块 模块包含的功能 浏览帖子 发布、修改、删除帖子 对帖子特殊操作 帖子评价 帖子模块 帖子发布增加多媒体 帖子类别多样化 帖子移动(单个) 帖子收藏 帖子搜索 帖子管理模块 帖子管理 帖子移动(批量)

会员登录后才能在网站中进行发帖操作,同样的只要登录会员才能回复帖子信息。

会员点击任意论坛版面进入之后填写帖子的主题信息和内容信息,点击发布就成功发布一条帖子信息,点击任何一条帖子信息,在下面进行回复帖子的操作。 2.扩展功能设计

具备了发帖、浏览帖子、回帖的Web系统就构成论坛了,但是这样的论坛很简单,没有吸引力,用户使用起来也不会很舒服,无论是作为商业还是个人论坛都是没有竞争力的。所以需要为其添加一些更人性化的功能使内容更丰富。扩展功能,如表4-5所示:

19

辽宁职业学院毕业论文

表4-5 扩展功能列表

功能名称 说明 用户控制自己的信息 用户可控制自己的信息是否公开 用户登录添加验证码 站内短信 帖子评价 登录时需输入验证码,如登录信息错误则重新生成验证码。这样可以防止一些软件偷取用户名和密码 让两个用户能在论坛内更方便的交流 给予用户对一个帖子评价好坏的功能 帖子发布添加多媒体 如可在帖子内使用表情图片、插入flash、音乐等功能 帖子类别多样化 帖子收藏 让用户可以发起投票、买卖等功能的帖子 在论坛中加入搜索但效率却不一定很高,对于好的帖子为了方便用户以后更方便找到这个帖子,可以让用户收藏帖子 建立一个荣誉体系,对于对论坛贡献大的用户给予一定的荣誉称号或者高的论坛等级 让用户直接看到一些论坛统计数据,如主题总数、在线人员等 论坛最重要的就是数据库,但数据库系统的安全并不是100%的,所以为了论坛能持续发展,需要定期对论坛数据库进行备份 对于一些非法言论或不良词汇可以在论坛进行过滤设置,一旦有人使用也会被过滤掉而不至于造成不良影响 对于一个蓄意捣蛋的用户,限制他的IP不能访问论坛,但这个有很大的局限性,一般情况下用处不会很大 用户等级 论坛情况显示 数据备份 非法言论过滤 非法IP限制

添加了以上功能,论坛就显得更具有亲和力了,而且也更具有实用性。

4.2 数据库设计

论坛系统信息的储存一般是在文件或者数据库中,相比之下数据库要简单高效, 能对论坛进行更好的控制,也能对资料提供一些严正和保护。所以目前流行的;论坛都是使用的数据库系统。使用数据库的首先就是要设计数据库的表结构,一个设计良好的数据库结构可以提高效率、方便维护,而且对于可能的扩充也会留有余地。 4.2.1 数据库概念设计

E-R图也即实体-联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。构成E-R图的基本要素是实体型、属性和联系。它是描述现实世界概念结构模型的有效方法。是表示概念模型的一

20

辽宁职业学院毕业论文

种方式,实体型(Entity)用矩形表示,矩形框内写明实体名;属性(Attribute)用椭圆形表示,并用无向边将其与相应的实体连接起来;联系(Relationship)用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。[12]

构成E-R图的基本要素

构成E-R图的基本要素是实体型、属性和联系,其表示方式为:

1.实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰比如学生张三丰、学生李寻欢都是实体。[13]如果是弱实体的话,在矩形外面再套实线矩形实体名及其属性名集合。

2.属性(Attribute):实体所具有的某一特征,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并且无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。

3.联系(Relationship):联系也成关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指构成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n或m : n)。比如老师给学生授课存在授课关系,学生选课存在选课关系。如果是弱实体的联系则在菱形外面再套菱形。

版面信息实体图属性如图4-6所示:

编号版面信息图4-6 版面信息实体属性图

名称

新闻资讯信息实体属性如图4-7所示:

标题发布时间编号新闻资讯图4-7 新闻资讯信息实体属性图

内容

21

辽宁职业学院毕业论文

管理员信息实体属性图如图4-8所示:

登录帐号编号管理员信息图4-8 管理员信息实体属性图

登录 密码

分类信息实体属性图如图4-9所示:

编号分类信息图4-9 分类信息实体属性图

名称

帖子信息实体图属性如图4-10所示:

版面编号帖子标题编号帖子信息帖子内容发布用户

图4-10 帖子信息实体属性图

4.2.2 数据库逻辑设计

主要数据库表物理设计如下:

本论文采用了SQL server2005数据库管理系统,建立的数据库名为StuBBS。 主要数据库表详细信息如下:

1.Admin管理员信息表,如表4-6所示:

22

辽宁职业学院毕业论文 表4-6 Admin管理员信息表

字段名 id Aname Apwd

中文名 编号 登录账号 登录密码 类型 int nvarchar nvarchar 长度(字符) 4 50 50 2.block论坛版面信息表,如表4-7所示:

表4-7 block论坛版面信息表 字段名 block_id block_name 中文名 编号 版面名称 类型 int nvarchar 长度(字符) 4 50

3.kind论坛分类信息表,如表4-8所示:

表4-8 kind论坛分类信息表 字段名 kind_id block_Name block_id kind_name kind_describe 中文名 分类编号 版面名称 版面编号 名称 描述 类型 int nvarchar int nvarchar nvarchar 长度(字符) 4 50 4 50 50

4.PageSet分页参数信息表,如表4-9所示:

表4-9 PageSet分页参数信息表

字段名 TopPage RepPage 中文名 主题分页数量 回帖分页数量 类型 int int 长度(字符) 4 4

5.News新闻资讯信息表,如表4-10所示:

23

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4