BBS系统开发与帐户安全保护的实现

BBS系统开发与帐户安全保护的实现[java毕业论文下载]

BBS系统开发与账户安全保护的实现

  

BBS的英文名称是Bulletin Board System,翻译为中文就是“电子公告板”。BBS在上世纪九十年代进入中国,并迅速普及。本设计的目的是用ASP和SQL开发一个简易的BBS系统,并实现账户安全保护。此外,BBS系统有操作简单、界面友好的特点,并具有广泛的应用前景。BBS系统开发主要讲述了系统设计的基本功能和方法。接着以BBS系统为例,逐一介绍开发的步骤:系统分析、系统设计、系统实现。在系统分析中先后用数据流程图、系统的功能结构图分析了BBS系统所需的各种数据。在BBS系统的设计中,详细的展现了系统的各个功能模块,所需的数据库表及表字段,菜单的设计等,并通过运用MD5函数,实现用户账户的安全保护。在BBS系统的实现中,取得了系统预期的成果,基本使各个模块的功能得以实现,并给出了模块实现的核心代码和主要的界面设计。

 

关键词BBS系统;ASP;SQL;账户安全

 

 

 

 

 

 

 

 

 

 

 

 

 

Development of BBS System and Implementation of Account Security Protection

Abstract

BBS’s English name is Bulletin Board System. In 90's of the last century BBS enters China and becomes popular. Aim of this design is to develop a simple system of BBS based on Asp and SQL, and the implementation of account Security Protection. Furthermore, BBS system is good for easy operation and friendly interface, it has comprehensive application foreground. Development of BBS System mainly narrates basic function and method for System Design. Then take this system as an example, recommend developing the step of this system one by one: system analysis, system design, and system realization. Successively used the data stream chart the system function structure drawing in the system analysis to analyze each kind of data which the BBS system needed. In the design of the system, detailed each function module which has represented the system, necessary database form and field, design of the menu, and implementation of user's account security protection by using MD5 function. In the realization of the system, I got anticipated achievement, realized each module’s basic function, and showed the modules realization core code and the main GUI design.

 

Key words: BBS system;ASP;SQL;Account security

 

 

 

 

 

 

 

 

目  录

论文总页数:21页

1 引言 1

1.1 BBS概念与发展背景 1

1.2 BBS系统的应用 1

2 BBS理论基础 1

2.1 BBS相关理论基础 1

2.2 BBS开发运行环境 2

3 系统功能需求分析 3

3.1 BBS系统的综合要求 3

3.1.1  系统功能要求 3

3.1.2  系统的数据要求 3

3.2 数据库E-R图 3

4 系统概要设计 4

4.1 模块的划分与功能设计 4

4.2 数据库结构的设计 5

5 系统详细设计 7

5.1 论坛首页模块 7

5.1.1  功能描述 7

5.1.2  界面设计 7

5.1.3  工作流程及代码设计 8

5.2  新用户注册模块 8

5.2.1  功能描述 8

5.2.2  界面设计 9

5.2.3  工作流程及代码设计 9

5.3  会员登陆模块 10

5.3.1  功能描述 10

5.3.2  界面设计 11

5.3.3  工作流程及代码设计 11

5.4  用户资料修改模块 12

5.4.1  功能描述 12

5.4.2  界面设计 12

5.4.3  工作流程及代码设计 12

5.5  发帖模块 13

 

5.5.1  功能描述 13

5.5.2 界面设计 13

5.5.3  工作流程及代码设计 13

5.6  留言模块 14

5.6.1  功能描述 14

5.6.2  界面设计 15

5.6.3  工作流程及代码设计 15

5.7  账户安全保护的实现 16

5.7.1  系统安全描述 16

5.7.2  md5算法描述 16

5.7.3  账户安全的实现 17

6 系统测试 17

结    论 19

参考文献 19

致    谢 20

声    明 21

 

 

引言

1.1  BBS概念与发展背景

BBS是英文Bulletin Board System的缩写,翻译成中文为“电子布告栏系统”或“电子公告牌系统”。 BBS是一种电子信息服务系统。它向用户提供了一块公共电子白板,每个用户都可以在上面发布信息或提出看法,早期的BBS由教育机构或研究机构管理,现在多数网站上都建立了自己的BBS 系统,供网民通过网络来结交更多的朋友,表达更多的想法。

园内的公告板性质相同,只不过是通过电脑来传播或获得消息而已。一直到个人计算机开始普及之后,有些人尝试将苹果计算机上的BBS转移到个人计算机上,BBS才开始渐渐普及开来。近些年来,由于爱好者们的努力,BBS的功能得到了很多的扩展。BBS最早是用来公布股市价格等类信息的,而且只能在苹果计算机上运行。

BBS于上世纪九十年代进入中国,并迅速普及。已经成为新兴一代年轻人的时代新宠。

1.2  BBS系统的应用

目前国内的BBS已经十分普遍,可以说是不计其数,其中BBS大致可以分为5类:

(1)校园BBS CERNET建立以来,校园BBS很快地发展了起来,目前很多大学都有了BBS,几乎遍及全国上下。而本系统就是一个简易的校园BBS系统.

(2)商业BBS站 ,这里主要是进行有关商业的商业宣传,产品推荐等等,目前手机的商业站、电脑的商业站、房地产的商业站比比皆是。

(3)专业BBS站 这里所说的专业BBS是指部委和公司的BBS,它主要用于建立地域性的文件传输和信息发布系统。

(4)情感BBS 主要用于交流情感,是许多娱乐网站的首选。

(5) 个人BBS 有些个人主页的制作者们在自己的个人主页上建设了BBS,用于接受别人的想法,更有利于与好友进行沟通。

若按其性质分则可以分为2类,为商业BBS站和业余BBS站。

BBS理论基础

2.1  BBS相关理论基础

进入二十一世纪,计算机技术迅速向着网络化、集成化方向发展。传统的单机版应用软件正在逐渐退出舞台,取而代之的是支持网络、支持多种数据信息(多媒体)的新一代网络版应用软件,而目前网络版软件中似乎存在着两种不同的趋势,一种是称为客户端——服务器的C/S结构应用系统,这类软件具有结构严谨,运行效率高,服务器端压力小,安全性好等优点,被广泛运用于局域网中。而另一种,也是本毕业设计所采用的,是称为浏览器——服务器的B/S结构应用系统,它的特点是在客户端直接采用了功能强大的浏览器软件作为界面,其优点在于软件开发效率高,客户端不受操作平台的限制、也不受地域的限制,网络传输量少,即适用于局域网,更适用于Internet。

而本系统就是B/S结构的BBS系统,它具有BBS系统应该具有的基本功能。

所谓B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows 98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。

将应用程序分成好几个离散逻辑组件,就是多层式结构应用程序。最常见的选择是分成三个部分:表示层、事务逻辑层和数据层,不过也有其它的组合。多层式结构应用程序,在一开始是解决某些与传统客户端/服务器 (主从式) 应用程序相关的问题,但是随着 Web 的出现,此结构已经成为主导新程序之开发的结构。

表示层主要运行于客户端浏览器,采用Script (脚本)语言编写。HTML、JavaScript、VBScript是此类应用系统中展示层最常用的脚本编制语言,结合CCS以及ActiveX技术,能设计出交互相当灵活功能又相当强大的客户端网页。

事务逻辑层设计通常有三个选择:ASP网页、COM或COM+组件、DBMS中所执行的预存程序。

数据层较为灵活,视系统规模可选择Sybase、Oracle、My SQL、SQL server或者MS Access。

2.2  BBS开发运行环境

本系统要求客户端支持IE4.0以上或与之兼容的浏览器软件,客户端硬件最低要求对应于IE4.0的硬件平台要求。服务器端要求支持ASP以及SQL数据库。

本系统的开发环境和开发工具为:Windows XP,SQL,Dreamweaver 。

安装此系统所需的基本软、硬件环境为:

(1) Windows2003/2000服务器版本。

(2) SQL Server2000或更高版本。

(3) 计算机: Pentium III 800MHz 或更高。

(4) 20G以上可用硬盘空间。

(5) 显示器。

系统功能需求分析

3.1  BBS系统的综合要求

3.1.1  系统功能要求

一个简易的BBS系统应具有的基础功能,包括新用户注册、用户登录、游客登录、发表帖子、阅读帖子、回复帖子的文章、用户资料修改,发送留言等。

本系统操作用户按不同级别依次可分为:游客,普通用户、版主用户、管理员。

普通用户功能要求---通用功能:发表或回复帖子、个人资料维护、用户留言,退出等。

版主用户功能要求---通用功能:继承普通用户的功能,能删除所属版面内的帖子。

管理员功能要求---通用功能:继承普通用户的功能,能删除BBS内所有版面里的帖子。

账户安全问题的实现:运用MD5算法,实现用户账户的安全。

3.1.2  系统的数据要求

根据系统的功能需求,本系统管理和维护以下几种数据元素(实体Entity):用户、管理员、帖子。

(1)用户实体:会员用户包含这样一些基本属性:用户名、用户密码、用户EMAIL、性别、生日,所在地区,以及邮箱。

(2) 管理员:一个管理员可以删除BBS论坛里面各个版面的帖子,而版主用户,只能删除其自身所在版面的帖子。

(3) 帖子:帖子包含以下一些基本属性:所属版面,作者,标题,帖子内容,帖子书写时间等等。

3.2  数据库E-R图

 

 

 

 

 

 

图3-1 用户与帖子之间管理关系E-R图

系统概要设计

4.1  模块的划分与功能设计

   通过对用户需求调研并分析,确定系统应具备的功能,包括用户注册和登陆;用户个人资料修改和密码修改;用户留言;BBS帖子的阅读和回复等功能;管理员对帖子的删除;账户安全问题等。各模块的具体功能设计如下:

用户管理部分:此部分主要实现用户的登陆,用户的注册,以及用户修改个人信息的功能。这些功能的是通过用户登陆模块,用户注册模块和修改个人信息模块来实现的。

论坛系统部分:此部分为整个BBS系统的基本功能体现,显示帖子列表,阅读帖子和回复帖子的功能都在此部分中得以体现。而整个功能也同样是通过三个小模块来实现。

留言系统部分:一般BBS系统都有发送留言短信的功能,在操作上一般分为留言发送,回复留言以及浏览阅读留言三个方面。其系统模块组织结构图如下:

 

 

 

 

 

 

 

图4-1:BBS系统模块图

4.2 数据库结构的设计

由于本系统所涉及到的功能不是特别多,所以设计的表单也不是特别多,本论坛的数据结构中主要包括4个基本信息表,根据系统功能分析,他们分别是用户信息表,文章信息表,留言信息表以及论坛菜单信息表。信息表的基本功能如下:

(1)用户信息表(user):记录所有可以登陆该系统的用户名,密码和其他相关数据。

(2)文章信息表(bbs):记录了论坛所有的文章信息,包括回复的文章信息。

(3)论坛菜单信息表(bbsmenu):该表存放了论坛的所有版块信息,包括版块的名称,版块的描述信息和版块的版主名称。

(4)留言信息表(message):此表记录会员所发的所有信息留言,包括留言的标题,留言内容,留言发送者及留言接收者等信息。

 

具体设计见后页表设计:

 

 

 

 

 

 

1. 用来存放系统用户信息的用户信息表

表4-1  user表

列名

数据类型

长度

允许空

说明

id

varchar

16

N

用户编号(自动编号)

userid

varchar

50

 

论坛系统的登陆名称

pwd

varchar

50

 

论坛系统的登陆密码

name

varchar

50

 

用户的呢称

sex

bit

1

 

0和1不确定

birthday

char

20

 

用户注册时输入生日信息

 

 

2. 用来存放发布的帖子相关信息的文章信息表

表4-2  bbs表

列名

数据类型

长度

允许空

说明

id

bigint

8

N

帖子信息编号(自动编号)

belongto

int

4

 

用于标识论坛版面

title

varchar

500

 

帖子标题

content

text

16

 

帖子内容

writer

varchar

50

 

发表帖子的作者

reciv

int

4

 

某一篇帖子回复帖子数目

hit

int

4

 

某一篇帖子被点击的次数

bbsdate

datetime

8

 

发表帖子的时间

flag

int

4

 

标识帖子是否被锁定

 

 

3. 用来存放论坛菜单信息的论坛菜单信息表

表4-3  bbsmenu表

列名

数据类型

长度

允许空

说明

id

int

4

N

论坛菜单编号(自动编号)

title

varchar

100

 

版面名称

manger

varchar

500

 

管理该版块的版主名称

content

varchar

500

 

该版面的描述

 

 

 

 

 

4. 用来存放留言信息的留言信息表

表4-4  message表

列名

数据类型

长度

允许空

说明

id

int

4

N

留言信息编号(自动编号)

content

char

100

 

留言的内容

to-man

char

50

 

留言的接收者

from-man

char

50

 

留言的发送者

isread

int

4

 

标识留言是否已经被阅读

 

系统详细设计

5.1  论坛首页模块

5.1.1  功能描述

论坛登录后首先是进入的论坛首页,首页主要实现以下功能:

(1)显示论坛的各个版块,

(2)实现论坛的内容导航

(3)提供用户修改个人信息的功能

(4)提供已经登录的用户的注销功能

(5)显示是否有新留言

5.1.2  界面设计

 

图5-1 论坛首页

 

5.1.3  工作流程及代码设计

    当用户输入自己的用户名和密码后,单击“登录”按钮,经过logincheck.asp将信息进一步处理之后,验证用户名和密码无误后便进入论坛首页页面,在此页面,用户能够实现发表新贴,阅读回复帖子以及发送接受论坛留言的功能。

论坛首页命名为default .asp 其核心代码如下:

<%

set mrs=server.CreateObject("adodb.recordset")

%>

‘在这里,我们首先取出该用户的用户名称,然后利用该用户的名称和一个标志isread查询messag表,如果记录集不为空,说明该用户有新的未读消息,因此显示你有新短消息,提醒用户查看留言’ 此段代码如下:

<%

'to_man=session("name")

set mes_rs=server.CreateObject("adodb.recordset")

sql11="select * from message where to_man='"&session("name")&"' and isread=0"

mes_rs.open sql11,conn,1,3

if not mes_rs.eof then

ismessage=1

mes_rs.close

else ismessage=0

end if

%>

5.2  新用户注册模块

5.2.1  功能描述

登录BBS后,若想在论坛上实现其功能,必须成为普通用户,其新用户注册页面的功能就是收集用户的基本信息,并对该信息的有效性进行最基本的验证,如用户名是否为空,密码是否为空等,同时将用户账户的密码用md5算法加密后保存在数据库中,从而实现用户账户的安全保护。

 

 

 

 

 

5.2.2  界面设计

 

图5-2 用户注册页面

BBS系统开发与帐户安全保护的实现[点击下载]

如需要全部源码,联系QQ:2812491287如需要全部源码,联系QQ:2812491287

评论