电子论坛系统的设计与实现.docx

上传人:b****3 文档编号:10261406 上传时间:2023-05-24 格式:DOCX 页数:45 大小:455.60KB
下载 相关 举报
电子论坛系统的设计与实现.docx_第1页
第1页 / 共45页
电子论坛系统的设计与实现.docx_第2页
第2页 / 共45页
电子论坛系统的设计与实现.docx_第3页
第3页 / 共45页
电子论坛系统的设计与实现.docx_第4页
第4页 / 共45页
电子论坛系统的设计与实现.docx_第5页
第5页 / 共45页
电子论坛系统的设计与实现.docx_第6页
第6页 / 共45页
电子论坛系统的设计与实现.docx_第7页
第7页 / 共45页
电子论坛系统的设计与实现.docx_第8页
第8页 / 共45页
电子论坛系统的设计与实现.docx_第9页
第9页 / 共45页
电子论坛系统的设计与实现.docx_第10页
第10页 / 共45页
电子论坛系统的设计与实现.docx_第11页
第11页 / 共45页
电子论坛系统的设计与实现.docx_第12页
第12页 / 共45页
电子论坛系统的设计与实现.docx_第13页
第13页 / 共45页
电子论坛系统的设计与实现.docx_第14页
第14页 / 共45页
电子论坛系统的设计与实现.docx_第15页
第15页 / 共45页
电子论坛系统的设计与实现.docx_第16页
第16页 / 共45页
电子论坛系统的设计与实现.docx_第17页
第17页 / 共45页
电子论坛系统的设计与实现.docx_第18页
第18页 / 共45页
电子论坛系统的设计与实现.docx_第19页
第19页 / 共45页
电子论坛系统的设计与实现.docx_第20页
第20页 / 共45页
亲,该文档总共45页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

电子论坛系统的设计与实现.docx

《电子论坛系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《电子论坛系统的设计与实现.docx(45页珍藏版)》请在冰点文库上搜索。

电子论坛系统的设计与实现.docx

电子论坛系统的设计与实现

 

电子论坛系统的设计与实现

 

电子论坛系统的设计与实现

摘要

电子论坛即BBS已经是互联网上的一种极为常见的互动交流服务。

论坛可以为网友提供开放性的分类讨论区专题服务,网友们可以在此发表自己的观感,交流某些技术,经验等。

论坛也可以作为用户和商家交流的渠道,商家也可以在此回答用户提出的问题或发布某些消息。

本系统使用ASP进行开发,数据库采用MicrosoftSQLServer2000。

本文描述了电子论坛系统的设计与实现。

首先对系统的需求进行了分析,建立系统工作流程图,设计系统数据库,对数据库结构进行了详细分析。

然后划分系统功能模块,最后详细描述了各个功能模块实现的方法,并给出相应代码。

关键词:

电子论坛系统;ASP;SQLServer2000

 

TheDesignandImplementationofBBS

Abstract

BBSasanelectronicforumontheInternetisaverycommoninteractionservices.Forumprovidesanopenplatformtodiscussonesubjectamonynetizens.Netizenscanexpresstheirimpressionsandcommunicatetechnologiesandexperience.Italsocanbeusedasachannelforthecommunicationbetweencustomerswithbusinessmen.

ThesystemisdevelopedwithASPandMicrosoftSQLServer2000.Inthispaper,howtodesignandimplementaBBSisintroduced.First,itanalyzesthedemandsforthissystem,establishessystemflowchart,designssystemdatabaseandanalyzesthedatabasestructure.Second,itintroducesthemodules.Thewayofimplementationofeachmodulesisintroduced,andthesourcecodesareshowedintheend.

Keywords:

BBS;ASP;SQLServer2000

论文总页数:

32页

1引言

1.1课题背景

论坛服务已经是互联网上的一种极为常见的互动交流服务。

论坛可以为网友提供开放性的分类讨论区专题服务,网友们可以在此发表自己的观感,交流某些技术,经验乃至人生的感悟与忧欢,亦可以作为用户和商家交流的渠道,商家也可以在此回答用户提出的问题或发布某些消息。

1.2国内外研究现状

BBS起源于20世纪初。

最初,论坛只是用于发布公共信息和讨论问题的在线交流平台;后来,随着网络的普及,论坛的功能也越来越丰富,不仅仅可以发表文字,更是可以使用多媒体,受到了广大网民的欢迎。

因此,商业网站对论坛重视起来,纷纷在自己的网站上开辟论坛,作为与网民交流的园地,同时在线技术支持和在线服务也在论坛中开展起来。

1.3本课题的研究意义

随着互联网技术的迅猛发展,网络给人们带来了很多便利,比如人们借助于网络进行相互交流变得更加方便。

电子论坛也称为BBS,BBS是BulletinBoardSystem的缩写,意即电子公告牌,一种在Internet上常见的用于信息服务的Web系统,它的主要服务是用来帮助浏览者相互沟通,吸引用户,服务用户的。

技术的发展一日千里,尤其是Web开发技术。

早年间,我们还只能用静态的HTML编写静态的网站,毫无交互性可言。

随着技术的飞速发展,我们有了动态的HTML(DHTML),然后有了脚本(Script),脚本有很多种,这些都伴随着早期的Web开发者走了很长,很苦的日子。

到了21世纪,Web的开发者们迎来了幸福的生活,Microsoft,Sun等公司相继推出了强大,快捷的ASP,PHP,JSP和ASP.NET等开发技术,我们可以使用多种编程语言来进行开发,大大提升了网站开发的效率,质量。

我们尽管可以说哪一种技术是最流行的,但是很难说哪一种技术是最好的,每一种技术都在它最对口的应用上。

对于电子论坛系统,我选择了ASP技术,它同样可把我们想要的功能很好的实现。

2系统分析

2.1系统需求分析

首先找出论坛针对的对象,得出一个简洁的例表:

1.用户:

论坛的使用人员,进行某些操作时需要注册。

2.版面:

表明发言内容的类型。

3.公共信息:

与论坛相关的信息。

4.帖子:

论坛中单个观点的讨论。

5.管理员:

与论坛服务的人员。

论坛的对象不是孤立的,它们是紧密联系的,下面是论坛各个对象之间的关联表,关联是单向的,是指左侧对象对上方对象的活动。

无关联的用×表示,如果两者只要单向关联,那么在另一个对象关联时用√表示。

表1各对象之间的关系表

用户

版面

公共信息

帖子

管理员

用户

注册修改浏览联系

浏览

浏览发布

浏览发布修改删除

版面

×

×

×

公共信息

×

×

×

帖子

×

×

×

管理员

删除授权

添加删除修改

添加删除修改

添加删除修改

×

至此,论坛的需要分析完成,接下来是论坛的功能设计。

2.2系统功能描述

2.2.1主要功能

首先从用户开始,用户关联的对象是自身,版面,公共信息,帖子。

分别根据用户与这些对象的联系给出一个明确的菜单

表2用户功能表

序号

功能名称

说明

1

用户注册

用户在论坛填写必要信息就可以成为注册用户,注册后,可修改自己的注册信息

2

用户登录

用户注册后可使用用户名,密码登录,可选择用户名,密码保存期限

3

浏览用户信息

注册用户可查看其它用户信息

序号

功能名称

说明

4

与其它用户联系

注册用户可发站内短信

5

浏览版面

任何用户可浏览版面信息

6

浏览公共信息

任何用户可浏览公共信息

7

浏览帖子

任何用户可浏览帖子

8

发布修改删除帖子

注册用户登录后可发布帖子,修改自己的帖子,删除自己的帖子

9

对帖子的特殊操作

主要针对版主类型的用户,可对帖子置顶,设置精华,删除帖子,移动帖子等操作

接下来的版面,公共信息,帖子都没有和其他对象的关联,它们在论坛中是被动对象,是被其它对象所操作。

因此针对它们的主要功能是由其它对象产生,例如浏览版面就是用户的功能。

管理员是论坛的一个特殊群体,它们的主要工作是保证论坛的正常运行,他们可以和论坛的所有对象产生联系,因此他们的功能也很丰富

表3管理员功能表

序号

功能名称

说明

1

用户删除

对于在论坛中造成很坏影响的用户,应该删除他们的身份

2

用户授权

授予用户版主权限

3

版面管理

版面是论坛的枝干,对版面进行添加,修改,删除等操作

4

公共信息管理

公共信息展示论坛的状态,不能出现非法言论

5

帖子的管理

帖子是论坛的枝叶,帖子的好坏关系到论坛的健康发展,对帖子进行删除,移动等

6

数据库的备份

管理员应该定期地对系统数据库备份,以免造成不必要的损失

现在分析各个对象的相关操作,设计为对象的功能实现接口,即为对象的操作方法。

各个板块有浏览列表和管理两个方法,管理方法又可以分为添加,修改,删除3个子方法。

帖子有浏览,发帖,回帖,搜索和管理5个方法,浏览方法又分为列表和查看两个子方法,管理方法分为编辑,删除,置顶,移动,指定精华5个子方法,如图。

 

图1帖子对象的相关关系

用户有注册、登录2个方法,管理用户方法又分为删除和设置权限2个子方法,如图。

 

图2用户对象的相关关系

这样分析完后,前面列出的功能列表就有了各自的归属对象。

论坛一般存在两种用户:

注册用户和管理员。

用户的权限是向下覆盖的,既上级权限包含下级权限,在论坛中,管理员是上级权限。

论坛的3大基本功能的相互关系如下图所示。

 

图3论坛基本功能的关系

本系统还有一些是论坛的内容更加丰富的扩展功能。

2.2.2论坛扩展功能

下面是个一个论坛扩展功能表。

表4扩展功能表

序号

功能名称

说明

1

用户控制自己的信息

用户不想让其他用户看到自己的信息,可以控制自己的信息是否公开

序号

功能名称

说明

2

用户登录添加验证码

防止暴力破解密码,输入用户名或密码错误会重新生成验证码

3

站内短信

方便用户在站内联系

4

帖子评价

提高用户参与论坛的积极性

5

帖子发布添加多媒体

吸引用户,扩展帖子发布功能

6

论坛收藏

保留用户喜欢的内容,方便用户查看

7

帖子搜索

提供模糊搜索,方便用户找到感兴趣的主题

8

用户等级

给用户一个荣誉,提高用户发帖的积极性

9

论坛情况显示

把论坛的一些数据显示给用户,如发帖数,在线用户人数等

10

数据备份

防止论坛出现故障,能够正常运行

11

非法言论过滤

对于一些非法言论可以在论坛中进行默认设置过滤

添加了这几个扩展功能后,论坛就显得平易近人多了,也更具有使用性。

3系统设计

3.1功能模块

根据上一节给出论坛所必须的功能,划分模块。

模块的划分主要是按照每一个对象的操作来归类。

论坛操作的对象是上一节所归纳的5个。

下面就针对这5个对象划分功能模块。

用户:

有两个模块,一个是用户注册,登录,修改信息等功能组合,是用户对用户自身的操作;另一个是管理员对用户进行删除,授权,是管理员对用户的操作,如表5。

表5用户功能模块表

模块

模块包含的功能

用户模块

用户注册

用户登录

浏览其它用户信息

与其它用户联系

用户控制自己的信息

用户登录添加验证码

用户等级

管理员模块

用户删除

用户授权

版面:

也有两个模块,一个是浏览模块,一个是管理模块。

其功能模块列表如表6。

表6版面功能模块表

模块

模块包含的功能

版面浏览模块

浏览版面

版面管理模块

版面管理

公共信息:

用户浏览公共信息的功能划分一个模块,管理员对公共信息的操作划分为一个模块,其功能模块列表如表7

表7公共信息功能模块表

模块

模块包含的功能

公共信息显示模块

浏览发布的公共信息

公共信息管理模块

公共信息管理

帖子:

帖子包括用户对帖子的操作和管理员对帖子的操作,相应地分为帖子模块和帖子管理模块,如表8。

表8帖子功能模块表

模块

模块包含的功能

帖子模块

浏览帖子

发布/修改/删除帖子

对帖子的特殊操作

帖子评价

帖子发布添加多媒体

论坛收藏

帖子搜索

帖子管理模块

删除帖子

移动帖子

管理员:

管理员是对其他对象进行操作,如表9。

表9管理员管理功能模块表

模块

模块包含的功能

管理员管理模块

用户管理

版面管理

帖子管理

数据备份

另外,对于用户使用的模块称为前台模块,管理员使用的模块称为后台模块。

系统总体功能划分如图4。

图4系统总体功能划分

3.2数据库设计

本论坛使用MicrosoftSQLServer2000数据库,下面列出是数据库设计的详细。

1.建立数据表间的关系

本论坛数据库共有11个数据表,具体如表10所示。

表10论坛数据表

序号

表名

说明

1

user_t

用户信息表

2

topic_t

主题信息表

3

superAdmin_t

论坛管理员表

4

post_t

帖子信息表

5

message_t

短消息信息表

6

grade_t

用户积分等级表

7

friend_t

用户好友表

8

file_t

文件上传表

9

board_t

子版面信息表

10

area_t

父版面信息表

11

admin_t

版主信息表

下面是数据表之间的关系图,如图5。

图5数据表关系

2.数据表结构的详细设计

表11用户信息表(user_t)

序号

字段名

字段类型

说明

备注

1

userid

Int

用户编号

主键

2

username

Varchar(50)

用户名

Notnull

3

userpassword

Varchar(50)

密码

Notnull

4

useremail

Nvarchar(255)

电子邮件

Notnull

5

usersign

Nvarchar(255)

用户签名

6

usersex

Varchar(50)

用户性别

Notnull

7

userface

Nvarchar(255)

头像

8

point

Int

积分

9

joindate

Datetime

注册日期

Notnull

10

userbirthday

Nvarchar(50)

用户生日

11

userquestion

Nvarchar(50)

密码问题

Notnull

12

useranswer

Nvarchar(50)

密码答案

Notnull

13

userlastip

Nvarchar(40)

最后登录IP

Notnull

14

userhidden

bit

是否隐身登录

Notnull

15

userqq

Nvarchar(255)

用户QQ

16

truename

Nvarchar(255)

真实姓名

17

country

Nvarchar(255)

国家

18

city

Nvarchar(255)

城市

19

constellation

Nvarchar(255)

星座

20

blood

Nvarchar(255)

血型

21

phone

Nvarchar(50)

电话

22

Works

Nvarchar(255)

职业

23

School

Nvarchar(255)

毕业院校

24

Address

Nvarchar(255)

家庭住址

25

jbzl

bit

是否公开基本资料

Notnull

26

xxzl

bit

是否公开详细资料

Notnull

在用户信息表里保存的是在论坛注册用户的信息,用户编号和用户名在论坛中是不能重复的,用户名不能重复还使用用户编号的原因是计算机对数字检索速度更快。

表12父版面信息表(area_t)

序号

字段名

字段类型

说明

备注

1

areaid

Int

父版面编号

主键

2

areaname

Varchar(255)

父版面名

Notnull

3

setuptime

datetime

建立时间

Notnull

表13子版面信息表(board_t)

序号

字段名

字段类型

说明

备注

1

boardid

Int

子版面编号

主键

2

boardname

Varchar(50)

子版面名

Notnull

3

areaid

Int

父版面编号

Notnull

序号

字段名

字段类型

说明

备注

4

readme

Varchar(255)

版面说明

Notnull

5

setuptime

Datetime

建立日期

Notnull

6

boardmaster

Varchar(50)

版主

7

topicnumber

Int

主题数量

Notnull

8

indexIMG

Varchar(255)

版面图片

Notnull

表12和13是版面信息表,这里使用两个表是为了编程方便,父版面和子版面是通过areaid字段关联的。

表14主题信息表(topic_t)

序号

字段名

字段类型

说明

备注

1

topicid

Int

主题编号

主键

2

title

Varchar(255)

主题

Notnull

3

bordid

Int

版面编号

Notnull

4

reply

Int

主题回复数

Notnull

5

userid

Int

用户编号

Notnull

6

username

Varchar(50)

用户名

Notnull

7

DateAndTime

Datetime

发表日期

Notnull

8

hits

Int

点击数

Notnull

9

istop

Bit

是否置顶

Notnull

10

isbest

Bit

是否精华

Notnull

11

fileid

int

上传文件编号

Notnull

表15帖子信息表(post_t)

序号

字段名

字段类型

说明

备注

1

postid

Int

帖子编号

主键

2

parentid

Int

回复帖子编号

Notnull

3

boardid

Int

版面编号

Notnull

4

username

Varchar(50)

用户名

Notnull

5

userid

Int

用户编号

Notnull

6

topicid

Int

主题编号

Notnull

7

title

Varchar(255)

主题

Notnull

8

DateAndTime

Datetime

发表日期

Notnull

9

body

Text

帖子内容

Notnull

10

ip

Varchar(40)

用户IP

Notnull

以上两张表是紧密关联的,论坛主题信息表记载了论坛中主题帖的信息,建立这个表的原因是用户在浏览论坛中的帖子时先应看到的是主题列表,如果主题能够吸引用户,用户才会去看其中的内容,否则用户一进来就看到帖子内容,会使用户感觉非常的杂乱。

这两个表是通过topicid字段联系起来的,parentid字段是用来针对特定的帖子回复。

接下来几张表是论坛的其它功能需要的数据表。

表16短消息信息表(message_t)

序号

字段名

字段类型

说明

备注

1

mid

Int

短消息编号

主键

2

sender

Varchar(50)

发送者

Notnull

3

incept

Varchar(50)

接受者

Notnull

4

title

Varchar(255)

主题

Notnull

5

content

Varchar(255)

内容

Notnull

6

sendtime

Datetime

发消息时间

Notnull

7

flag

bit

是否已读

Notnull

表17用户等级信息表(grade_t)

序号

字段名

字段类型

说明

备注

1

gradeid

Int

自动编号

主键

2

userid

Int

用户编号

Notnull

3

postid

Int

帖子编号

Notnull

4

grade

Varchar(255)

等级

Notnull

5

point

Int

积分

Notnull

6

ip

Varchar(40)

IP

Notnull

表18文件上传信息表(file_t)

序号

字段名

字段类型

说明

备注

1

fileid

Int

文件编号

主键

2

fname

Varchar(100)

文件名

Notnull

3

userid

Int

用户编号

Notnull

4

ename

Varchar(50)

文件扩展名

Notnull

5

ftype

Varchar(255)

文件类型

Notnull

6

fsize

Varchar(255)

文件大小

Notnull

表19好友信息表(friend_t)

序号

字段名

字段类型

说明

备注

1

Fid

Int

自动编号

主键

2

Userid

Int

用户编号

Notnull

3

username

Varchar(50)

用户名

Notnull

4

friendid

Int

好友编号

Notnull

5

frinedname

Varchar(50)

好友名

Notnull

6

addtime

datetime

添加时间

Notnull

表20管理员信息表(admin_t)

序号

字段名

字段类型

说明

备注

1

masterid

Int

自动编号

主键

2

userid

Int

用户编号

Notnull

3

username

Varchar(50)

用户名

Notnull

4

boardid

Int

版面编号

Notnull

5

flag

bit

权限标识

Notnull

4系统实现

4.1首页

当用户打开论坛时,首先看到的是论坛首页,用户从首页可以看到和论坛相关的并且能激起用户兴趣的东西。

比如发帖数,在线用户数以及论坛板块的情况,如图6所示。

图6论坛首页

首页分为3个部分,最上面的导航条为一部分,中间的公共信息为一部分,下面的版面为一部分。

将导航条部分单独写入文件top.asp作为公共程序,以后任何一个页面需要就使用

--#includefile="top.asp"-->来调用。

下面是top.asp的程序。

1<%IfSession("userid")=""Then%>

这里显示的是游客的导航条

2<%Else%>

这里显示的注册用户的导航条

3<%EndIf%>

程序说明:

用户登录后将用户名存入session对象来判断用户状态。

公共信息部分是显示了论坛和当前用户的状态,该部分的详细内容将在后面的公共信息部分讨论。

版面部分显示了版面的列表,该部分的详细内容将在后面的版面部分讨论。

至此,首页的主要程序已经介绍了,以后章节是各个模块的主要程序。

4.2数据库连接函数

SQLServer数据连接要求提供用户名,密码,数据库名及数据库服务器地址,下面是使用ADO连接数据库的代码:

1<%dim

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2