1、贴吧的设计与实现资料贴吧的设计与实现一. 需求分析一.1 需求分析随着网络互联技术的进步,现在贴吧、论坛系统只需打开网页就可进行留言。贴吧的对象是很多的,各个层次都可以进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指定用户进行表格到现在通过网络直接点击就可进行。论坛管理系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型论坛管理系统二. 设计与实现二.1 系统设计思想二.2 系统说明 二.2.1 系统主要功能系统主要的功能包括:(1)普通用户:普通用户可以发表贴子,查询贴子,发表留言,针对自己的帖子可以修改帖子,查看帖子,删除帖子。(2)普通管理员:普通管理员登陆可以查询贴
2、子,对帖子留言进行屏蔽、删除等,可以对普通用户的发帖进行审核,删除等操作。(3)超级管理员:超级管理员除了具有普通管理员所有的功能外,还可以对所有用户进行权限的分配二.2.2 系统总体分析通过上面的功能说明,可以将贴吧的制作分为四大部分: (1)贴子显示模块:显示所有用户发布的贴子主题。(2)发布贴子模块:为用户提供发布贴子的功能。(3)帖子管理模块:管理员可以对贴子进行审核、删除,对帖子留言进行屏蔽、删除等功能,还有就是管理员对帖子进行综合管理。(4)用户权限分配模块:给用户分配相应的权限。了解了具体的功能需求后,就可以按模块的功能开始贴吧的数据库的设计了。这些模块的只是在功能上对贴吧结构的
3、划分,实际上并不能够完全的把他们独立出来进行设计。对于这种较小的应用,也没有必要进行完全的模块化设计,在良好的规划下直接写程序代码或许来的更为简单一些。二.3 数据库设计思想二.3.1 数据库设计说明数据库的设计采用的公司的Oracle数据库,共设计了3张表,分别是帖子表、留言表和用户表。二.3.2 数据表结构user (用户信息表)用户信息表主要用于保存用户登录系统的用户名。用户注册的信息也会被登陆到该表中。表user的结构如表所示。用户信息表字段类型长度是否为空说明IDuser_name Pass_wordEmail sexregister_time birthdayJobhonorhea
4、d_url长整型文本文本文本文本文本文本文本文本文本450505050850505050否是是是是是是是是是主键(自动编号)用户姓名用户密码E-mail性别注册时间生日用户类型头衔头像路径表4-2-1(用户信息表)user二.3.3 系统功能介绍整个系统按照权限划分,可以分为三类,即超级管理员登陆、普通管理员、普通用户登陆。按权限划分系统功能,如图(4-3-1)所示: 图(4-3-1) 系统功能图二.3.4 贴吧各功能介绍通过此功能用户可以对贴吧中的许多功能和数据进行操作控制。二.3.5 用户登陆身份验证界面是采用的公司的单点集成登陆模板。管理员、普通用户均通过此页面进行登陆。界面如图(4-3
5、-2)所示: 图(4-3-2) 身份验证二.3.6 课程栏目1. 用户登陆成功后,进入论坛后,第一页默认显示的是关于Sql Server 系列的所有贴子, 界面如图(4-3-4)所示:2. 登陆系统后选择数据库论坛的第二个栏目oracle 9i-10g,会将这个栏目下的所有贴子显示出来。 显示的内容大致和第一个栏目一致。界面如图(4-3-5)所示:3. 登陆系统后选择数据库论坛的第三个栏目MySql,会将这个栏目下的所有贴子显示出来。 显示的内容大致和第一个栏目一致。界面如图(4-3-6)所示: 4. 登陆系统后选择数据库论坛的第四个栏目其它数据库,会将这个栏目下的所有贴子显示出来。 显示的内
6、容大致和第一个栏目一致。界面如图(4-3-7)所示:图(4-3-7)其它数据库将文件下载到用户指定的路径,主要实现下载的代码如下: Dim saveFileName As StringDim startIndex As Int32 = strfile(1).LastIndexOf() + 1saveFileName = strfile(1).Substring(startIndex)Dim fi As System.IO.FileInfo = New System.IO.FileInfo(strfile(1)Dim fileExtName As String = fi.ExtensionDim
7、 DEFAULT_CONTENT_TYPE As String = application/unknownDim regKey, fileExtKey As Microsoft.Win32.RegistryKeyDim fileContentType As StringDim strsql_u As String = TryregKey = Microsoft.Win32.Registry.ClassesRootfileExtKey = regKey.OpenSubKey(fileExtName)用于上传的代码如下所示:Dim strTime As String = Now()Dim file
8、Subject As String = TextBox1.Text.ToStringDim filepath As String = FileUpload1.PostedFile.FileNameDim filename As String = filepath.Substring(filepath.LastIndexOf() + 1)Dim fileEx As String = filepath.Substring(filepath.LastIndexOf(.) + 1)Dim serverpath As String = Server.MapPath(File/) + filenameFi
9、leUpload1.PostedFile.SaveAs(serverpath)二.3.7 控制面板控制面板分为二部分, 一部分是登陆用户个人资料的操作,包括修改密码。另一部分功能是用户查看自己发过的所有贴子。个人资料界面如图(4-3-10)所示:图(4-3-10) 我的资料个人发表的贴子查看界面如图(4-3-11)所示:图(4-3-11)发表的贴子二.3.8 搜索贴子如果用户发表的贴子过多,想要查找某一个贴子将会很困难,所以可以根据贴子的标题进行模糊查找。如图(4-3-12)所示:图(4-3-12) 搜索贴子二.3.9 用户管理此功能只对管理员开发,管理员可以对不合法用户和从来不登陆论坛的用户
10、进行删除操作。界面如图(4-3-13)所示:图(4-3-13) 用户管理该页面中实现了鼠标经过GridView时当前行的色变成了蓝色,主要实现在代码如下所示:If e.Row.RowType = DataControlRowType.DataRow Then 鼠标经过时,行背景色变 e.Row.Attributes.Add(onmouseover,this.style.backgroundColor=#E6F5FA)鼠标移出时,行背景色变 e.Row.Attributes.Add(onmouseout,this.style.backgroundColor=#FFFFFF)End If二.3.1
11、0 发表贴子用户成功登陆后,可以进行发布贴子的操作。界面如图(4-3-14)所示:图(4-3-14)发表贴子该页面由用户输入主题,内容,选择分类就可以进行论坛发贴子的操作了。三. 调试与测试三.1.1 程序调试系统完成之后,对各个模块的功能进行了详细的测试,输入数据和预测输出数据相比,发现了一些问题。主要是在查询过程中预计查询结果和实际结果不一致,有时候达不到目的,需要靠一步步的查找解决。三.1.2 系统测试系统测试是管理信息系统开发周期中一个十分重要而漫长的阶段。其重要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析、系统设计和系统实现的最终审查。对所实现的功能进
12、行了简单的测试。四. 总结贴吧是Internet上的一种信息服务系统。它提供一块公共电子白板,每个用户都可以在上面书写,可发布信息或提出看法。随着网络技术的飞速发展,贴吧已经成为网络上不可缺少的交流方式之一,深受网民的喜爱。1、该贴吧实现了一些基本的功能;2、该贴吧还有一些问题需要完善。后记从进入公司到现在已经实习近3个月,衷心的感谢我的指导老师给予了精心的指导和热情的帮助,导师在百忙的工作之中抽出时间为我提供了必要的帮助;作为一个即将毕业的实习生,在导师的指导下学到了不少与开发相关的知识,并且能够快速了解公司,融入到扬讯大家庭中去;在短暂的几个月的相处时间里,老师渊博的知识,敏锐的思路和实事求是的工作作风给我留下了深刻的印象,这将使得我终身受益,谨此向老师表示衷心的感谢和崇高的敬意。我还要感谢公司给我们实习生培训的各位领导、同事,通过参加他们的培训,让我尽快地了解了公司文化。通过参加他们的各种业务培训,能够使我尽快熟悉公司的业务,了解公司所开发的一些系统及系统的功能作用,通过参加培训学习,了解了环保物联网系统,除此之外,还学到了不少环保知识。正是由于他们的传道、授业、解惑,让我学到了不少知识,并从他们身上学到了如何为人处事。