毕业论文设计,正文

3995
    


来源:
Licence:
联系:
分类:
平台:
环境:
大小:
更新:
标签:
联系方式 :
免费下载 ×

下载APP,支持永久资源免费下载

限免产品服务请联系qq:1585269081

下载APP
免费下载 ×

下载APP,支持永久资源免费下载

下载APP 免费下载
下载 ×

下载APP,资源永久免费


如果出现不能下载的情况,请联系站长,联系方式在下方。

免费下载 ×

下载论文助手APP,资源永久免费

免费获取

如果你已经登录仍然出现不能下载的情况,请【点击刷新】本页面或者联系站长


系统功能设计
1.1 引言

随着网络的越来越普及,人们越来越关于这样一种交流平台――网站客户服务。很多商业网站都开设自己网站客户服务来提供交流和服务,也有很多的个人网站和个人网站客户服务的出现,网站客户服务已经不光是一种交流平台,甚至是成为了实现自我价值的一个舞台。正因为网站客户服务越来越重要,所以网站客户服务的维护也变成了一种职业,而更好的维护则需要从设计这个层面来了解和进行。

在网站客户服务里大家最熟悉的就是用户浏览网站客户服务中已有的内容,针对别人的主题展开讨论,也可以发表自己的观点供大家品评。同时为了防止用户发布一些不健康不合法的内容,需要有管理人员来对这些内容进行删除、修改。而且用户想在网站客户服务发布信息则要求他注册,这样来控制用户发布信息和方便管理者操作用户的信息。网站客户服务也要有多个版面和分区,用来区分各种帖子的内容范畴,方便整理和管理。所以网站客户服务的基本功能就是要实现用户的数据库管理和帖子的数据库管理,以及怎么样让这些数据库和网页的操作联系起来。

1.2 需求分析

要设计一个一个网站客户服务,首先要分析网站客户服务里需要那些内容,以及各种内容之间的关系。

首先列出网站客户服务常用的名词:用户、版面、公共信息、帖子、主题、积分、称号、版主、注册信息、管理员、系统参数。

对于以上名词可以精简。主题是帖子的一个特例、积分和称号是用户的一个属性、版主是增加了权限的用户,注册信息是用户的具体属性。

所以具体的对象有:用户、版面、公共信息、帖子、管理员、系统参数。

具体的操作包括:管理员对用户、帖子、版块的管理;客人和用户的对版块、帖子的浏览;客人的注册;用户的发帖、回帖、搜索等操作。

把具体的对象和具体的操作相联系,我们可以归结出网站客户服务基本操作的流程图,如图1-1。

SHAPE \* MERGEFORMAT

图1-1 网站客户服务基本功能流程图

图1-1中个将具体的对象和操作直观的表达了出来,为了更具体的细化对象和操作的关联,用来划分开发的模块,我们将对象与对象之间的关联可以建立出一张表,对象如表1-1。

表1-1 各对象间的关联表

用 户版 面公共信息帖 子管理人员系统参数用  户

注 册

修 改

浏 览

联 系

浏 览

浏 览

发 布

浏 览

发 布

修 改

删 除

特殊操作



×

版  面



×

×

×



×

公共信息



×

×

×



×

帖  子



×

×

×



×

管理人员

删 除

授 权

添 加

删 除

修 改

添 加

删 除

修 改

添 加

删 除

修 改

×

设 置

系统参数

×

×

×

×



×

表1-1中的对象是单向关联,是指左侧对象对上方对象的活动。×表示没有关联,√表示存在单向关联。通过以上设计,网站客户服务需要些什么以及所需要的对象之间存在着怎么的关系就有了基本的概念。

1.3 功能设计

表1-1中用户关联的对象是自身、版面、公共信息、帖子。分别根据用户与这些对象的联系给出一个明确的菜单,如表1-2。

表1-2 用户功能列表

功能名称

说明

用户注册

用户在网站客户服务填写必要信息后就可以注册为注册用户,并能在登陆后对注册信息进行更改

用户登陆

 注册后的用户可利用用户名和密码在网站客户服务登陆

浏览其他用户信息

 用户注册后可以查看其他用户的公开信息

与其他用户联系

 可以在网站客户服务内给其他用户私下留言,或直接发送邮件等

浏览版面

 用户可以看到以列表形式展现的版面信息和版面说明

浏览发布公共信息

 未登陆的用户可以浏览公共信息,登陆后可以发布允许范围内的公共信息

浏览帖子

 用户可以以列表形式浏览帖子主题及其全部内容

发布修改删除帖子

 用户在登陆后可以发布帖子、修改自己的帖子,被给予版主权限后还可以编辑、修改、删除权限范围内的其他用户帖子

对帖子特殊操作

 主要针对版主权限用户,对帖子进行置顶、加精华等特殊操作,是帖子主题不同于其他主题

版面、公共信息、帖子都没有和其他对象的关联,都属于被动的对象,是被其他对象所操作的,因此针对它们的功能主要是有其他对象产生。版面和帖子是有一定关系的,可以看作是对帖子内容的归类,类似文件夹与文件的关系,有时候可以认为版面是帖子的一个属性。

对于管理员的功能,应该认为管理员是网站客户服务的特殊群体,工作是设置网站客户服务参数规则和维护网站客户服务的正常运转。管理员可以和所有对象产生关联,所以其功能设定也很丰富,如表1-3。
表1-3 管理员功能列表

功能名称

说明

用户删除

 对于一些蓄意破坏的用户,删除其身份,不允许其存在

用户权限

 对于一个具有管理能力的用户给予一些特殊的权限,让他们在权限范围内帮助管理和维护网站客户服务

版面管理

 版面是网站客户服务的枝干,要设定网站客户服务需要的合适版面,让网站客户服务的功能更明细,分类更规范,方便大家的浏览

公共信息管理

 公共信息是向用户展现网站客户服务状态的部分,由于信息的普遍性,其删除和修改权限需要由管理人员来完成

帖子管理

 帖子是网站客户服务的叶子,是基本数据库,反映了网站客户服务使用者和管理者的水平,所以需要管理人员的全权管理来规范其内容

设置系统参数

 系统参数包含的内容很多,直接关系到网站客户服务的正常运行,包括网址在内的各种参数全部要由管理人员统一设置和变更

对于管理员和用户功能关系可以细化成以下几个相关用例图。

网站客户服务设置参数,可以把设置一组参数作为一个方法,也可以把设置一个参数作为一个方法,如图1-2。

SHAPE \* MERGEFORMAT

图1-2 网站客户服务对象的相关用例图

各个版块有浏览列表和管理两个操作,管理方法又包括了创建、修改和删除这3个子方法,如图1-3。

SHAPE \* MERGEFORMAT

图1-3 版块对象的相关用例图

帖子有浏览、发帖、回帖、搜索和管理5种方法,浏览方法又可以分列表和查看2个子方法,管理方法又可分编辑、删除、置顶、转移、加精华5个子方法,如图1-4。

SHAPE \* MERGEFORMAT

图1-4 帖子对象的相关用例图

用户类有注册、登陆和管理3个方法,管理方法又分为添加、删除、设置权限3个子方法,如图1-5。

SHAPE \* MERGEFORMAT

图1-5 用户对象的相关用例图

这样,表1-2和1-3就分别有了各自的归属对象。

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

1.4 扩展功能设计

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

用表格形式列出可能的扩展功能,如表1-4。表1-4 扩展功能列表

功能名称

说明

用户控制自己的信息

用户可控制自己的信息是否公开

用户登陆添加验证码

 登陆时需输入验证码,如登陆信息错误则重新生成验证码。这样可以防止一些软件偷取用户名和密码

站内短信

 让两个用户能在网站客户服务内更方便的交流

帖子评价

 给予用户对一个帖子评价好坏的功能

帖子发布添加多媒体

 如可在帖子内使用表情图片、插入flash、音乐等功能

帖子类别多样化

 让用户可以发起投票、买卖等功能的帖子

帖子收藏

 在网站客户服务中加入搜索但效率却不一定很高,对于好的帖子为了方便用户以后更方便找到这个帖子,可以让用户收藏帖子

用户等级

 建立一个荣誉体系,对于对网站客户服务贡献大的用户给予一定的荣誉称号或者高的网站客户服务等级

网站客户服务情况显示

 让用户直接看到一些网站客户服务统计数据,如主题总数、在线人员等

数据备份

 网站客户服务最重要的就是数据库,但数据库系统的安全并不是100%的,所以为了网站客户服务能持续发展,需要定期对网站客户服务数据库进行备份

非法言论过滤

 对于一些非法言论或不良词汇可以在网站客户服务进行过滤设置,一旦有人使用也会被过滤掉而不至于造成不良影响

非法IP限制

 对于一个蓄意捣蛋的用户,限制他的IP不能访问网站客户服务,但这个有很大的局限性,一般情况下用处不会很大

添加了以上功能,网站客户服务就显得更具有亲和力了,而且也更具有实用性。第二章 系统架构与数据库设计
2.1 功能模块的划分

模块的划分主要是按每一个对象的操作来归类。网站客户服务操作的对象在第一章里归纳为用户、版面、公共信息、帖子、管理员、系统参数这6个对象,所以就要针对这6个对象划分功能模块。

(1) 用户:有两个模块,一个是用户注册、登陆、修改信息等功能组合,是用户对自身的操作;另一个是管理人员对用户进行删除、授权的操作;如表2-1。

表2-1 用户功能模块列表

模块

模块包含的功能

用户模块

 用户注册

 用户登陆

 浏览其他用户信息

 与其他用户联系

 用户控制自己的信息

 用户登陆添加验证码

 用户等级

管理人员模块

 用户删除

 用户授权

(2) 版面:有两个模块,一个是浏览模块,一个是管理模块。如表2-2。

表2-2 版块功能模块列表

模块

模块包含的功能

版面浏览模块

 浏览版面

版面管理模块

 版面管理

(3) 公共信息:将用户发布和浏览公共信息的功能划分为一个模块,对象是用户对公共信息的操作;管理员对公共信息的操作划分为另一个模块。如表2-3。
表2-3 公共信息功能模块列表

模块

模块包含的功能

公共信息显示模块

 浏览、发布公共信息

公共信息管理模块

 公共信息管理

(4) 帖子:帖子是网站客户服务的基本,其功能是最多最复杂的,但仍然可以分为两个模块,根据操作对象来区分。如表2-4。

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

模块

模块包含的功能

帖子模块

 浏览帖子

 发布、修改、删除帖子

 对帖子特殊操作

 帖子评价

 帖子发布增加多媒体

 帖子类别多样化

 帖子移动(单个)

 帖子收藏

 帖子搜索

帖子管理模块

 帖子管理

 帖子移动(批量)

(5) 管理员:管理员主要是对其他对象进行操作,是对其他模块的操作人员,同时系统参数设置模块的功能也可以划分进来。如表2-5。

表2-5 管理员管理功能模块列表

模块

模块包含的功能

管理员管理模块

 设置系统参数

 数据备份

 非法言论过滤

 非法IP限制

通过以上分析,网站客户服务的模块划分也就完成了。但如果要把整个网站客户服务系统完整的架构出来,还要分析模块与模块之间的关系,把零散的功能模块用一条主线串联起来。对于网站客户服务系统来说,联系各个模块的主线是使用者的权限,用户能使用网站客户服务的哪些功能是由用户的权限决定的,网站客户服务的每个功能都与相应的权限对应。同一类用户使用的功能模块。是以使用者为中心连接起来的。另外,操作同一类事物的功能模块,也是相互关系的。

浏览模块与发帖回帖模块、管理帖子模块关联,是由网站客户服务的系统流程决定的;管理版块模块与浏览模块关联,是有帖子与版块的父子关系决定的,帖子依附与版块,先有版块后有帖子,帖子必须发表在某个版块中;管理用户模块与注册登陆模块关联,是由同一类对象用户决定的,注册后获得网站客户服务的身份,成为用户,所有的用户需要接受管理员的管理,用户登陆证明自己在网站客户服务中的身份。分析了这些关系,我们可以得到网站客户服务系统的整体架构,如图2-1。

SHAPE \* MERGEFORMAT

图2-1 网站客户服务整体架构图

对于用户使用的模块成为前台模块,管理员使用的模块称为后台模块。其划分如图2-2。

SHAPE \* MERGEFORMAT

图2-2 功能模块划分

2.2 数据库设计

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

需要建立的数据表

为了更方便操作和维护,建立的数据表名都使用相关含义的因为单词,为了区别于数据库中可能出现的其他非表内容,在给每个表名加上一个标识。根据对网站客户服务功能的分析,可以建立16个数据表,如表2-6。

表2-6 网站客户服务数据表

序号

表名

说明

1

 Admin_T

 管理员信息表

2

 Bbs1_1

 帖子信息表

3

 BbsNews_1

 公共信息表

4

 Board_T

 版面信息表

5

 BookMark_T

 收藏夹信息表

6

 Friend_T

 用户好友列表

7

 Help_T

 帮助信息表

8

 Log_T

 网站客户服务日志表

9

 Message_T

 短消息信息表

10

 Online_T

 在线用户表

11

 Setup_T

 系统信息表

12

 Topic_T

 网站客户服务主题信息表

13

 Upfile_T

 文件上传表

14

 User_T

 用户信息表

15

 Vote_T

 投票信息表

16

 VoteUser_T

 投票用户表

有些表是可以独立的,但大多数表都是存在关联的。其关联一般都是通过主线用户相关联,或者是用户ID,或者是用户的其他信息。所以也可以看到主线用户的列表是相关数据项目最多的。

数据库表结构的详细设计

首先是用户信息表,用户信息是相关信息最多的表。如表2-7。

表2-7 用户信息表(User_T)

序 号

字 段 名

字段类型

说 明

备 注

1

UserID

COUNTER

用户编号

Key

2

UserName

VARCHAR(50)

用户名

Not null

3

UserPassword

VARCHAR(20)

密码

Not null

4

UserEmail

VARCHAR(255)

电子邮件

Not null

5

UserPost

INTEGER

发帖数
6

UserTopic

INTEGER

发布主题数
7

UserSign

VARCHAR(255)

用户签名
8

UserSex

BYTE

性别
9

UserFace

VARCHAR(255)

头像
10

UserWidth

INTEGER

头像宽
11

UserHeight

INTEGER

头像高
12

JoinDate

DATETIME

注册时间

Not null

13

LastLogin

DATETIME

最后登陆时间
14

UserLogins

INTEGER

登陆次数

Not null

15

UserViews

INTEGER

信息被浏览次数
16

UserClass

VARCHAR(20)

用户级别
17

UserWealth

INTEGER

现金货币
18

UserEP

INTEGER

经验值
19

UserCP

INTEGER

魅力值
20

UserPower

INTEGER

威望值
21

UserDel

INTEGER

被删主题数
22

UserIsBest

INTEGER

精华帖子
23

UserTitle

VARCHAR(50)

头衔
24

UserBirthday

VARCHAR(50)

生日
续表2-7

序 号

字 段 名

字段类型

说 明

备 注

25

UserQuestion

VARCHAR(50)

密码问题

Not null

26

UserAnswer

VARCHAR(50)

密码答案

Not null

27

UserLastIP

VARCHAR(30)

最后登陆IP
28

UserPhoto

VARCHAR(255)

用户照片
29

UserFav

VARCHAR(255)

用户好友分组
30

UserInfo

LONGCHAR

用户其他信息
31

UserSetting

VARCHAR(255)

用户设置
32

TitlePic

VARCHAR(50)

标题图片
33

UserHidden

BYTE

是否隐身

Not null

34

UserMsg

VARCHAR(30)

用户消息
35

UserTaday

VARCHAR(250)

今日信息
在用户信息表里保存的是所有在网站客户服务注册的用户的信息,用户编号是用户在网站客户服务中的唯一标识。其实用户名也是不可重复的,但是使用编号作为主键可以让查找起来更加方便,提高效率,而且编号也是与其他表关联的主要字段。密码和密码答案是在用户忘记密码时验证身份的保证,所以设置为不能为空。用户名和密码是登陆的唯一识别,邮件是为了方便联系和某些可能的服务需要,所以也设置为非空。

表2-8是网站客户服务中的版面信息表。

表2-8 版面信息表(Board_T)

序 号

字 段 名

字段类型

说 明

备 注

1

BoardID

INTEGER

版面编号

Key

2

BoardType

VARCHAR(50)

版面名称
3

ParentID

INTEGER

上级版面编号

Default 0

4

ParentStr

VARCHAR(250)

上级版面名称
5

Depth

SMALLINT

版面层数
6

RootID

INTEGER

主版面编号
7

Child

INTEGER

子版面编号
8

Orders

INTEGER

显示顺序
续表2-8

序 号

字 段 名

字段类型

说 明

备 注

9

Readme

VARCHAR(255)

介绍
10

BoardMaster

VARCHAR(100)

版主
11

PostNum

INTEGER

发帖数量
12

TopicNum

INTEGER

主题数量
13

IndexIMG

VARCHAR(255)

网站客户服务图象
14

TadayNum

INTEGER

今日发帖数
15

BoardUser

VARCHAR(255)

状态
16

LastPost

LONGCHAR

最后一帖
17

Sid

INTEGER

签名标识
18

Board_Setting

LONGCHAR

版面设置
19

Board_User

VARCHAR(250)

版面用户
20

BoardTopStr

VARCHAR(255)

置顶主题信息
版面信息表中依然是使用了版面编号做主键,一般都会用编号作为主键,这样效率要更高些。上级版面编号是为了方便分层次找到各级版面。发帖数量、主题数量是指本版面的所有发帖数量和主题数量,而上级版面的数量是包括下级版面的所有发帖数量和主题数量的,今日发帖数和最后一帖的规则也相同。版面置顶主题信息所包含的是该版面置顶的主题的编号。与版面相关最密切的是帖子和主题,表2-9是网站客户服务的主题信息表。

表2-9 网站客户服务主题信息表(Topic_T)

序 号

字 段 名

字段类型

说 明

备 注

1

TopicID

COUNTER

主题编号

Key

2

Title

VARCHAR(250)

标题

Not null

3

BoardID

INTEGER

版面编号
4

PollID

INTEGER

投票表编号
5

LockTopic

INTEGER

是否锁定
6

Child

INTEGER

回复数量
7

PostUserName

VARCHAR(50)

发帖用户名
8

PostUserID

INTEGER

发帖用户编号
续表2-9

序 号

字 段 名

字段类型

说 明

备 注

9

DateAndTime

DATETIME

发帖时间
10

Hits

INTEGER

点击数
11

Expression

VARCHAR(20)

状态
12

VoteTotal

INTEGER

投票总数
13

LastPost

VARCHAR(250)

最后一帖
14

PostTable

VARCHAR(8)

发帖内容表
15

Istop

BYTE

是否置顶
16

LastPostTime

DATETIME

最后发帖时间
17

Isbest

BYTE

是否精华
18

Isvote

BYTE

是否投票
19

TopicMode

BYTE

主题模式
20

Mode

INTEGER

模式
表2-10是帖子信息表。

表2-10 帖子信息表(Bbs1_T)

序 号

字 段 名

字段类型

说 明

备 注

1

AnnounceID

COUNTER

帖子编号

Key

2

ParentID

INTEGER

上级帖子编号

Not null

3

BoardID

INTEGER

版面编号

Not null

4

UserName

VARCHAR(50)

发帖用户名

Not null

5

PostUserID

INTEGER

用户ID

Not null

6

Topic

VARCHAR(255)

标题
7

Body

LONGCHAR

帖子内容
8

DateAndTime

DATETIME

发帖时间
9

Lengh

INTEGER

内容长度
10

RootID

INTEGER

主题编号
11

Layer

INTEGER

层数
12

Order

INTEGER

排序号
续表2-10

序 号

字 段 名

字段类型

说 明

备 注

13

Isbest

BYTE

是否精华
14

IP

VARCHAR(40)

发帖用户IP
15

Expression

VARCHAR(255)

状态
16

LockTopic

INTEGER

主题锁定状态
17

Signflag

BYTE

签名标识
18

Emailflag

BYTE

电子邮件标识
19

Isagree

VARCHAR(250)

评价
20

Isuoload

BYTE

是否有附件
21

Isaudit

BYTE

是否有音频
22

PostBuyUser

LONGCHAR

购买此帖的人
23

Ubblist

VARCHAR(250)

UBB标识使用编号
表2-11是投票信息表。

表2-11 投票信息表(Vote_T)

序 号

字 段 名

字段类型

说 明

备 注

1

VoteID

COUNTER

投票编号

Key

2

Vote

LONGCHAR

投票内容
3

VoteNum

LONGCHAR

每项投票的数量
4

VoteType

INTEGER

投票类型
5

LockVote

INTEGER

锁定投票
6

Votes

INTEGER

投票人数
7

TimeOut

DATETIME

截止时间
8

UArticle

INTEGER

用户文章
9

UWealth

INTEGER

现金货币
10

UEP

INTEGER

经验值
11

UCP

INTEGER

魅力值
12

UPower

INTEGER

威望值
表2-12是投票用户表。

表2-12 投票用户表(VoteUser_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

COUNTER

编号

Key

2

VoteID

INTEGER

投票编号
3

UserID

INTEGER

用户编号
4

VoteDate

DATETIME

投票日期
5

VoteOption

VARCHAR(50)

投票选项
以上4个表是紧密关联的。为什么单独建立主题信息表而不把主题当成帖子的特例来筛选,是因为主题会有很多回复,而在网站客户服务帖子搜索时如果搜索要过滤一次帖子将会速度很慢,而且用户浏览主题时也不必要看到帖子的全部内容。表2-9里用到了4个外键,如果在其他表中该字段没有的数据,在主题信息表中也是不能有的。发帖用户名和发帖用户编号来源于用户信息表,可以算是数据冗余,是在查询用户发帖时具有更高的效率。

表2-10也包含了4个外键,其中主题编号是用来关联主题信息表的。层数记录的是该帖子是主帖还是从帖,排序数是对同一层次的帖子进行排序的。签名标识和电子邮件标识是记录用户是否在此帖中开放自己的签名和电子邮件。

表2-11记录了投票类帖子的投票部分的内容。由于投票内容和帖子信息不一样,所以单独建立一张表。后面几个U开头的字段是限制字段,可以对于投票的用户做一些资格上的限制,防止新用户反复注册投票。

表2-12记载了没个投票用户的投票情况。投票编号和用户编号都是外键。投票选项字段和表2-11中的投票内容字段想关联。

接着设计管理员信息表,如表2-13,记载了管理员的信息。

表2-13 管理员信息表(Admin_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

COUNTER

管理员编号

Key

2

Username

VARCHAR(50)

用户名
3

Password

VARCHAR(50)

用户密码
4

Flag

Memo

权限字段
5

LastLogin

DATETIME

投最后登陆时间续表2-13

序 号

字 段 名

字段类型

说 明

备 注

6

LastLoginIP

VARCHAR(50)

最后登陆IP地址

Key

7

Adduser

VARCHAR(50)

用户信息表中的用户名
管理员信息表和用户信息表是有关联的,外键是用户信息表里的用户名,所以网站客户服务的管理人员也是网站客户服务的注册用户。这样可以让管理人员在修改网站客户服务参数后可以很直观的看到修改后的状态。

公共信息表记载的是网站客户服务中发布的公共信息,与版面等信息是关联的。如表2-14。

表2-14 公共信息表(BbsNews_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

COUNTER

编号

Key

2

BoardID

INTEGER

版面编号
3

Title

VARCHAR(50)

标题
4

Content

LONGCHAR

内容
5

Username

VARCHAR(50)

发布用户名
6

Addtime

DATETIME

发布时间
7

Bgs

VARCHAR(100)

背景音乐
表2-14中版面编号和发布用户名是外键,但版面编号可以为0,表示是在网站客户服务首页发布的信息。背景音乐是让大家读枯燥的公告时有亲切感,不至于觉得无聊。

收藏夹信息表是针对用户的一个信息表,如表2-15。

表2-15 收藏夹信息表(BookMark_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

COUNTER

编号

Key

2

Username

VARCHAR(50)

用户名
3

url

VARCHAR(100)

收藏的网页地址
4

Topic

VARCHAR(100)

帖子的主题
5

Addtime

DATETIME

添加时间
收藏夹是为了给用户带来方便的,这里收藏的是网页的地址,其实也可以做成收藏主题的编号,但因为可能收藏版面等容易编号混乱。

短消息信息表记录用户之间的短消息,见表2-16。

表2-16 短消息信息表(Message_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

COUNTER

编号

Key

2

Sender

VARCHAR(50)

发送者
3

Incept

VARCHAR(50)

接受者
4

Title

VARCHAR(100)

标题
5

Content

LONGCHAR

内容
6

Flag

INTEGER

阅读标记
7

SendTime

DATETIME

发送时间
8

DelR

INTEGER

接受者删除标识
9

DelS

INTEGER

发送者删除标识
10

IsSend

INTEGER

已发送标识
短消息是用户之间私下交流的内容,所以必须保留两者之间的信息。发送和接收者都是用户信息表关联的外键。删除标识设置两个是防止一方删除操作后另一方看不到的情况。

用户的好友信息表见表2-17。

表2-17 用户好友列表(Friend_T)

序 号

字 段 名

字段类型

说 明

备 注

1

F_ID

COUNTER

好友编号

Key

2

F_username

VARCHAR(50)

用户名
3

F_friend

VARCHAR(50)

好友用户名
4

F_Addtime

DATETIME

添加时间
5

F_mod

BYTE

好友类型
6

F_userID

INTEGER

用户编号
用户好友列表是用户用来相互交流的,是网站客户服务感觉更人性化。记录好友用户名是因为用户往往记得这个好友名字却不记得编号,所以这里用用户名做记录而不是编号。

在线用户表是显示即时在先的用户,可以方便用户见看到在线情况而更及时的交流。如表2-18。表2-18 在线用户表(Online_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

DOUBLE

编号

Key

2

Username

VARCHAR(50)

用户名
3

Userclass

VARCHAR(20)

用户类型
4

Stats

VARCHAR(250)

用户状态
5

IP

VARCHAR(40)

当前IP
6

Actforip

VARCHAR(40)

IP来源
7

Startime

DATETIME

开始时间
8

Lastimebk

DATETIME

最后操作时间
9

BoardID

INTEGER

版面编号
10

Browser

VARCHAR(250)

浏览器类型
11

ActCome

VARCHAR(50)

来源
12

UserID

INTEGER

用户编号
13

Userhidden

INTEGER

是否隐身
这里的主键是DOUBLE类型,是因为用户的活动很多,数据量存在溢出的可能。用户名、编号和类型都是来自用户信息表的外键。浏览器类型记录了浏览器和操作系统的类型。

文件上传表是帖子表的一个附表,它记录了在帖子中的附件等信息,见表2-19。

表2-19 用户信息表(User_T)

序 号

字 段 名

字段类型

说 明

备 注

1

F_ID

COUNTER

编号

Key

2

F_AnnounceID

VARCHAR(50)

帖子编号
3

F_BoardID

INTEGER

版面编号
4

F_UserID

INTEGER

用户编号
5

F_Username

VARCHAR(50)

用户名
6

F_Filename

VARCHAR(250)

文件名
7

F_FileType

VARCHAR(10)

文件类型
8

F_Type

SMALLINT

文件类型编号
续表2-19

序 号

字 段 名

字段类型

说 明

备 注

9

F_FileSize

INTEGER

文件大小
10

F_Readme

VARCHAR(250)

文件说明
11

F_Download

INTEGER

下载次数
12

F_ViewNum

INTEGER

浏览次数
13

F_DownUser

LONGCHAR

下载用户
14

F_Flag

SMALLINT

文件标识
15

F_AddTime

DATETIME

添加日期
16

F_Viewname

VARCHAR(255)

显示名称
文件上传表记录了用户上传附件的内容。用户名、用户编号、版面编号等都是外键。文件名字段由于用户上传的文件可能同名,所以采取系统自动命名的方式,缺点是如果同一个文件分包上传,则下载后需要重新命名后才能恢复原文件。文件类型是文件真正的类型,而类型编号是网站客户服务文件类型,表示下载与显示。

帮助信息表是很重要的表,是用来介绍整个网站客户服务的使用的,见表2-20。

表2-20 帮助信息表(Help_T)

序 号

字 段 名

字段类型

说 明

备 注

1

H_ID

COUNTER

帮助编号

Key

2

H_ParentID

INTEGER

上级编号
3

H_Title

VARCHAR(250)

标题
4

H_Content

LONGCHAR

内容
5

H_Type

BYTE

类型
6

H_Stype

INTEGER

后台类型
7

H_begimg

VARCHAR(100)

背景图片
8

H_Addtime

DATETIME

添加时间
帮助信息表是个独立的表,帮助信息对于网站客户服务是很重要的,帮助文件写得好,用户就会上手快,网站客户服务就会更有亲切感。虽然现在的网络用户对网站客户服务都并不陌生,但良好的帮助文件依然可以体现出网站客户服务在设置上的到位。因为帮助文件分用户和管理员的,所有添加一个后台类型来区别帮助文件的显示位置。

网站客户服务日志表是用来记录网站客户服务行为的,一旦网站客户服务出现了问题,可以通过这个表来跟踪一些活动,分析出问题的所在。见表2-21。

表2-21 网站客户服务日志表(Log_T)

序 号

字 段 名

字段类型

说 明

备 注

1

L_ID

COUNTER

日志编号

Key

2

L_AnnounceID

INTEGER

帖子编号
3

L_BoardID

INTEGER

版面编号
4

L_Touser

VARCHAR(50)

访问页面
5

L_Username

VARCHAR(50)

访问用户名
6

L_Content

VARCHAR(255)

日志内容
7

L_AddTime

DATETIME

添加时间
8

L_IP

VARCHAR(50)

用户IP
9

L_Type

BYTE

日志类型
为了保证日志记录信息的详实,因此日志表需要设计得很全面。帖子编号和版面编号是外键,记录了网站客户服务中对帖子信息进行操作的信息,当非帖子操作时,这两个字段不是必须的。

系统信息表关系到整个网站客户服务是否可以正常运行,是核心表,见表2-22。

表2-22 系统信息表(Setup_T)

序 号

字 段 名

字段类型

说 明

备 注

1

ID

COUNTER

编号

Key

2

Forum_Setting

LONGCHAR

网站客户服务设置
3

Forum_Ads

LONGCHAR

网站客户服务广告
4

Forum_Badwords

LONGCHAR

过滤词
5

Forum_rBadword

LONGCHAR

注册过滤词
6

Forum_Maxonline

INTEGER

最多在线人数
7

Forum_MaxonlineDate

DATETIME

最多在线日期
8

Forum_TopicNum

INTEGER

单页主题数
9

Forum_PostNum

INTEGER

单页帖子数
10

Forum_TodayNum

INTEGER

今日发帖数
续表2-22

序 号

字 段 名

字段类型

说 明

备 注

11

Forum_UserNum

INTEGER

网站客户服务用户数
12

Forum_YesterdayNum

INTEGER

昨日发帖数
13

Forum_MaxPostNum

INTEGER

最大发帖数
14

Forum_MAXPostDate

DATETIME

最大发帖日期
15

Forum_LastUser

VARCHAR(50)

最后注册用户
16

Forum_LastPost

VARCHAR(255)

最后一帖
17

Forum_BirthUser

LONGCHAR

过生日的用户
18

Forum_Sid

INTEGER

网站客户服务编号
19

Forum_Version

VARCHAR(50)

网站客户服务版本
20

Forum_NowUseBBS

VARCHAR(8)

帖子信息表
21

Forum_IsInstall

BYTE

是否被安装
22

Forum_Ad

LONGCHAR

网站客户服务广告
23

Forum_ChanName

VARCHAR(50)

网站客户服务名称
24

Forum_ChanSetting

VARCHAR(250)

网站客户服务设置
25

Forum_LockIP

LONGCHAR

锁定的IP
26

Forum_Cookiespath

VARCHAR(50)

Cookie存储路径
27

Forum_Boards

LONGCHAR

网站客户服务版面
28

Forum_AlltopNum

VARCHAR(250)

网站客户服务置顶数
29

Forum_Pack

VARCHAR(250)

超级管理员
虽然是核心表,但是每个字段的内容都很简单。网站客户服务设置字段存储了网站客户服务名称、地址、联系方式等。过滤词设置比较有用,当用户发表一些禁止的词汇时可以通过过滤让这些词汇不显示在网站客户服务上。其他的一些字段都是记录了一些网站客户服务的状态。

网站客户服务的数据库是非常重要的,它决定了整个网站客户服务最终的使用是否可行。

基本设计
3.1 网站客户服务首页设计

当用户打开网站客户服务时,首先看到的是网站客户服务首页,用户从首页可以看到和网站客户服务相关的内容,发帖数、用户数量和主要版面的情况等。首先这个页面应该尽量的美观,操作截面也要看起来简单易用而且具有实用性。

一般网站客户服务的首页分4个部分,上面是网站客户服务的顶部LOGO,一般这个要体现出网站客户服务的一个主题;接着是网站客户服务的导航部分,包括了用户状况和网站客户服务了基本状况,且这两个状况应该左右分开;再下面就是网站客户服务主题部分的各个版面信息;最下面就是网站客户服务用户在线状况网站客户服务当前的情况。

基本上可能变动大的只有版面部分,所以其他变动小的部分可以做成公用文件,让其他页面可以重用。这3部分不写在文件里,而是直接写进数据库中。如程序3-1。

程序3-1 首页公用程序























































毕业论文设计,正文


’{$title}’)” onmousemove=”status=’收藏本页’;” onmouseout=”status=”;”>收藏本页



联系我们


网站客户服务帮助








-=> 用户来访信息
您的真实IP是:{$userip},

操作系统:{$system},浏览器:{$brw}


-=网站客户服务在线情况 [
Target=”hiddenframe”>{$showstr}
][查看在线

用户位置
]
目前网站客户服务上总共有{$onlinenum}

在线,其中注册会员{$ousernum}人,访客{$gusernum}人。


{$BuildDate}创建以来,历史最高在线记录是{$maxuser}人同时在线,

发生时间是:{$maxusertime}


名单图例:{$piclist}



















毕业论文设计,正文 没有新帖子 

         毕业论文设计,正文 有新的

帖子            毕业论文设计,正文

 被锁定的网站客户服务


首页里用到了很多“{}”包括的字符,里面的内容是变量,因为网站客户服务信息会随一些操作而改变而不同的显示状态,这些信息将随这些状态的改变而改变成及时的真实的状态。这些是要与数据库连接的,所以下面将说明数据库的连接函数。

3.2 数据库连接函数

数据库连接在网站客户服务运行中是必不可少的,把这部分单独做成一个函数,在需要的时候只需要调用这个函数就可以了,而不用每次去写连接程序,这种复用可以让操作更加方便快捷。

选择的Access作为数据库,功能不强大,不能让很多人连接,但是可以省掉很多设置,对机器要求也相对要低得多,适合用PC机架设网站客户服务。ASP中与数据相关紧密的是ADO,要让ADO对象能存取数据库,最重要的东西是OLE DB和ODBC的驱动程序,必须具备对应数据库的其中一种驱动程序,ADO对象才能进行存取。因为根据Microsoft公司的说法,OLE DB驱动程序的执行效能比ODBC要好,所以选择用OLE DB驱动程序。

利用ADO的Connection来建立同数据库的连接。建立ADODB.Connection对象,使用此对象的Open方法打开数据库。用Access在网站客户服务路径下建立一个数据库存储路径“data”,然后建立一个名为mybbs7.mdb的数据库,建立之前数据库设计中的表。利用Microsoft公司的OLE DB机制连接Access,用OLE DB不用建立ODBC就可以直接连接Access数据库。见程序3-2。

程序3-2 Access数据库连接

Sub ConnectionDatabase

Dim ConnStr

Db=”data/mybbs7.mdb”

ConnStr=”Provider=Microsoft.jet.OLEDV.4.0”Data Source=”& Server.MapPath(db)

Set conn=Server.CreateObject(“ADODB.Connection”)

Conn.open ConnStr

if Err Then

Err.Clear

Set Conn=Nothing

Response.Write ”数据库连接出错,请检查连接字符串。”

Response.End

End if

End Sub

Sub声明了函数ConnectionDatabase,End Sub结束这个函数。Dim声明了变量ConnStr,这个变量是用来存储连接数据库信息的。变量Db声明了数据库文件所在的路径。为ConnStr赋值是声明OLE DB连接数据库的方式,Data Source后面跟的是数据库文件所在的路径。Server.MapPath是ASP内置Server对象一个函数,用来取得网站目录下文件的绝对路径。7~12行是一个判断错误的信息,如果连接出错,Asp的Err对象判断系统给出错误的存在,然后清除。

第四章 模块的实现
4.1 用户模块

4.1.1 用户的登陆

首先看用户的登陆。在用户信息表里用户名和用户密码字段是用来验证用户身份的,用这两个字段来写验证用户登陆的程序。

登陆页面命名为Login.asp,这个页面包含了输入用户名和密码、Cookie选项、和隐身登陆选项。隐身登陆只是一个判断登陆状态的标识。主要是验证用户身份和把用户信息写入Cookie。

首先看验证用户身份的程序,如程序4-1。

程序4-1 验证用户身份程序(Login.asp)

sqlstr=" UserName='"&username&"'"

Sql="Select UserID,UserName,UserPassword,UserEmail,UserPost,UserTopic,UserSex,UserFace,

UserWidth,UserHeight,JoinDate,LastLogin,UserLogins,Lockuser,Userclass,UserGroupID,

UserGroup,userWealth,userEP,userCP,UserPower,UserBirthday,UserLastIP,UserDel,UserIsBest,

UserHidden,UserMsg,IsChallenge,UserMobile,TitlePic,UserTitle,TruePassWord,UserToday "

Sql=Sql+" From [Dv_User] Where "&sqlstr&""

set rsUser=Mybbs.Execute(sql)

If rsUser.eof and rsUser.bof Then

ChkUserLogin=false

Exit Function

Else

iMyUserInfo=rsUser.GetString(,1, "

免费下载 ×

下载APP,支持永久资源免费下载

下载APP 免费下载
温馨提示
请用电脑打开本网页,即可以免费获取你想要的了。
扫描加我微信 ×

演示

×
登录 ×


下载 ×
论文助手网
论文助手,最开放的学术期刊平台
				暂无来源信息			 
回复
来来来,吐槽点啥吧

作者联系方式

×

向作者索要->