BBS论坛系统设计实现论文

上传人:无*** 文档编号:69687554 上传时间:2022-04-06 格式:DOC 页数:31 大小:529.50KB
收藏 版权申诉 举报 下载
BBS论坛系统设计实现论文_第1页
第1页 / 共31页
BBS论坛系统设计实现论文_第2页
第2页 / 共31页
BBS论坛系统设计实现论文_第3页
第3页 / 共31页
资源描述:

《BBS论坛系统设计实现论文》由会员分享,可在线阅读,更多相关《BBS论坛系统设计实现论文(31页珍藏版)》请在装配图网上搜索。

1、湖南大学毕业设计(论文) 第II 页毕业设计(论文)设计论文题目:BBS论坛系统的设计与实现 学生姓名:学生学号:专业班级:学院名称:指导老师:学院院长: 年5 月 23 日毕业设计(论文) 第II 页摘 要本课题所实现的BBS系统是基于使用c#语言开发实现,使用的数据库是sql.server2000数据库。并且在其中实现了一般的BBS所具有的通常的共有的功能。比如用户登录,发帖,删帖,发表留言等功能。从理论上讲,Internet 上的电子公告板与现实生活中的公告板的作用是一样的。这些数以万计的电子公告板都针对某一主题进行着持续不懈的讨论,所以电子公告板有时也称为计算机会议服务。电子公告板的主

2、题多种多样,其范围从科学、政治、文学、 艺术到幽默、厨艺、体育、产品、影视、股票、音乐等无所不包。绝大部分的讨论是人们容易理解的,但也有一部分需要有高深的专业知识或相同的背景。有时一个电子公告板仅局限于某个地区、某些组织甚至某些个人,有时则会对全世界开放。关键词:论坛系统,数据库,用户,互连网The Design and Implementation of BBS Forum System AbstractThe issue achieved by the BBS system is based on c # language used to achieve development, the

3、use of the database is sql.server2000 database. And in this system to achieve the general BBS by a total of the usual functions. For example, users log in, post, cut message, delivered messages, and other functions. Theoretically speaking, the use of electronic bulletin board on Internet and in real

4、 life the role of the bulletin board is the same. So many of these electronic bulletin boards are directed against a particular theme of the ongoing discussions, the electronic bulletin board is sometimes called as computer conference services. Electronic bulletin board contains a variety of topics,

5、 ranging from science, politics, literature, art to humor, cooking, sports, products, video, stocks and so on. Most of the discussion is easy to be understand by the people, but there are also part of them need for advanced expertise or the same background. Sometimes an electronic bulletin board is

6、limited to certain area, some organizations or even individuals, and sometimes opened to the world.Key Words:BBS, Database, ASP.NET, Users, Internet毕业设计(论文) 第30 页目录目录11绪 论21.1概述21.2项目开发的目的31.3 BBS的历史41.4 国内BBS的现状与展望42需求分析62.1 目标62.1.1 基本要求62.1.2 开发目标62.1.3 应用目标62.2 功能需求分析63 系统分析及设计83.1 系统设计以及实现83.1.

7、1 设计思想83.1.2 系统的实现93.1.3 论坛系统说明173.1.4 论坛系统总体分析173.2 数据库设计183.3 各单元模块设计203.3.1 用户注册登陆功能203.3.2会员发贴与回复功能213.3.3 管理员管理帖子与用户管理功能223.4系统测试233.5 本章小结244结论25致谢25参考文献261 绪 论1.1概述BBS的英文全称是BulletinBoardSystem,翻译为中文就是“电子公告板”。BBS最早是用来公布股市价格等类信息的,当时BBS连文件传输的功能都没有,而且只能在苹果计算机上运行。早期的BBS与一般街头和校园内的公告板性质相同,只不过是通过电脑来传

8、播或获得消息而已。一直到个人计算机开始普及之后,有些人尝试将苹果计算机上的BBS转移到个人计算机上,BBS才开始渐渐普及开来。近些年来,由于爱好者们的努力,BBS的功能得到了很大的扩充。目前,通过BBS系统可随时取得国际最新的软件及信息,也可以通过BBS系统来和别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及医学等等各种有趣的话题,更可以利用BBS系统来刊登一些“征友”、“廉价转让”及“公司产品”等启事,而且这个园地就在你我的身旁。只要您拥有1台计算机、1只调制解调器和1条电话线,就能够进入这个“超时代”的领域,进而去享用它无比的威力! 早期的BBS由教育机构或研究机构管理,现

9、在多数网站上都建立了自己的BBS 系统,供网民通过网络来结交更多的朋友,表达更多的想法。 目前国内的BBS已经十分普遍,可以说是不计其数,其中BBS大致可以分为5类:(1) 校园BBS CERNET建立以来,校园BBS恨快地发展了起来,很多大学都有了BBS,几乎遍及全国上下。象清华大学、北京大学等等都建立了自己的BBS系统,清华大学的水木清华很受学生和网民们的喜爱。大多数BBS是由各校的网络中心建立的,也有私人性质的BBS。 (2) 商业BBS站 ,这里主要是进行有关商业的商业宣传,产品推荐等等,目前手机的商业站、电脑的商业站、房地产的商业站比比皆是。 (3) 专业BBS站 这里所说的专业BB

10、S是指部委和公司的BBS,它主要用于建立地域性的文件传输和信息发布系统。 (4) 情感BBS 主要用于交流情感,是许多娱乐网站的首选。 (5) 个人BBS 有些个人主页的制作者们在自己的个人主页上建设了BBS,用于接受别人的想法,更有利于与好友进行沟通。1.2项目开发的目的网络论坛进入战国时代。大大小小的网络论坛生长着消亡着,而随着网络的迅猛发展,网民们也逐渐分野细化,分类细化的网络社区呼之欲出。1999年,生在江苏长在陕西的苏秦成立了以社区为主的“西陆”网站,而此时,远在海南的“天涯社区”,古都南京的“西祠胡同”,也纷纷以有特色的社区服务抢夺网民。这三家都带有商业背景的社区网站,与第一代的网

11、络论坛的创立者不同,他们一开始就摈弃了理想和人文的色彩,以规范的商业*作吸引新网民的加入,而完成了圈地运动的网站,将利用庞大的网民资源开展他们的商业活动。稳定的收入正是这些论坛得以长期平稳发展的保证。从今年的各地板砖排行榜来看,这三个社区的帖子经常上榜。这三大社区,和三大门户网站的论坛,形成了分庭抗礼的局面。目前还难看出谁将赢得绝对的优势,就好比作家要成为文学泰斗一样,比拼的就是谁的命长,谁活到最后,谁就笑到最后。此外,目前活跃的网络论坛还有强国论坛、中青论坛、球迷一家等。强国论坛是人民网开设的论坛,目的是为那些爱国无门又有一腔热血堵在心头的爱国志士们设立的。中青论坛是中青在线的论坛,其中的青

12、年话题是人气最旺的论坛,由中青报编辑李方主持,以为文学女青年排忧解难和抒发小资情调为宗旨。球迷一家和前面提到的天涯社区都属于海南在线,主要收容当年从新浪体育沙龙逃亡的散兵游勇。还有一些人气未必很高但声望不低的专业类论坛。IT方面有新浪IT业界论坛和DONEWSIT写作社区,摄影类有第三只眼和江湖色论坛,文学类有橄榄树和诗生活等。这些论坛有个共同的特点:在喧闹的网络背景下,惨淡经营,低调运作。而混迹于其中的网民图的是,有朝一日,能脱颖而出,在业界找到自己的一席之地。随着现在网络技术的日新月异,人们越来越渴望在网络上表现自己的观点,让别人知道自己的观点,并且也对别人的观点越来越有兴趣;BBS的出现

13、使得人们可以在网络上非常快捷方便的发表自己的观点,见解。现在的论坛系统越来越人性化,可以使得使用者更加快捷的对自己发表的帖子进行修改。1.3 BBS的历史CBBS/Chicago(ComputerizedBulletinBoardSystem/Chicago),此乃最早的一套BBS系统。之后随着苹果机的问世,开发出基于苹果机的BulletinBoardSystem和大众信息系统(People,sMessageSystem)2种BBS系统。1981年IBM个人计算机诞生时,并没有自己的BBS系统。直到1982年,BussLane才用Basic语言为IBM个人计算机编写了一个原型程序。其后经过几番

14、增修,终于在1983年通过CapitalPCUserGroup(CPCUG)的CommunicationSpecialInterestGroup会员的努力,改写出了个人计算机系统的BBS。经ThomasMach整理后,终于完成了个人计算机的第1版BBS系统RBBS-PC。这套BBS系统的最大特色是其源程序全部公开,有利于日后的修改和维护,因此后来在开发其他的BBS系统时都以此为框架,所以RBBS-PC赢得了BBS鼻祖的美称。但在当时,如何实现站与站之间的联系问题并未解决。1984年美国的TomJonning开发了一套具有电子功能的电子公告板程序FIDO。由于该软件具有站际连线和自动互传信息的功

15、能,所以站际间彼此可以在一个共同的预定时间传送电子邮件,使得BBS网络化有了一线生机。BBS发展至今,目前世界上业余的BBS网络除了FidoNet(惠多网)以外,几个较具知名度的还有EggNet、AlterNet和RBBS-Net等等。由于这些网络和FidoNet之间的信息交流不成问题,这就实现了所谓的跨网。1.4 国内BBS的现状与展望国内的BBS站,单线站还占大多数。随着计算机的普及,特别是调制解调器的大量使用,BBS的活动将会进一步高涨。但是,随之而来的拨号难和抢线难的问题将会加剧。尽管BBS站台的数量在不断增长,但这种增长的幅度总也赶不上用户群的增长。许多人同时拨号一个站台,不可避免地

16、发生冲突。每回要拨上几十次乃至上百次才能成功连上一个BBS站的状况已经成为困扰今日中国 BBS用户的一个难题。随着BBS活动的深入,国内已经出现了一些多线站,一次可以允许2人以上同时访问。BBS的发展过程中,也出现了一些问题。由于国内使用的BBS架站软件,都是从国外引进的,因此没有必要的中文说明。虽然一些热心的站长翻译了一些资料,但是仅靠这些是远远不够的。另外,有些站台的设立是相互抄袭,所以在结构上难免有雷同之处。1999年是中国网络的发展年。但是,我们应该清醒地认识到,目前一些BBS站并没有走上“简单、易用”这一层次。包括一些厂商架设的BBS站,实用性还需要加强。今后,国内的BBS站将向着个

17、性化和专业化的方向发展。2 需求分析2.1 目标2.1.1 基本要求主要的功能:新用户的注册,会员密码取回,会员登录,用户自己修改信息,管理员删除用户,游客浏览留言,会员新增留言,会员留言回复,管理员删除留言这些功能,可以应付一般的用户需要。2.1.2 开发目标预期的目的是为了做成交互式的网页,方便客户端和浏览器端之间的交流。通过论坛,人们能够相互交流沟通,把疑惑在论坛里公布,大家献计献策,共同学习,共同进步。2.1.3 应用目标系统是一个会员登录留言系统。网上游客能够浏览论坛上的帖子,并且能够注册成为用户。论坛注册会员能够修改自己的资料信息,申请版主,发表帖子,让大家积极参与讨论。论坛管理员

18、能够便于管理论坛,包括浏览游客留言,审核留言,对于不健康或是不利于社会稳定的留言能进行删除操作,会员管理以及论坛版主管理等等。2.2 功能需求分析 人员管理子模块 提供了用户信息,用户登录,用户注册,用户密码修改,用户权限设置,管理员设置这些功能。 论坛管理模块根据新建论坛的序号修改这个已经建立的论坛名字,也可以在这个模块中对于已经建立的新旧论坛进行删除。在此模块中加入新的论坛,直接添加在数据库中显示在页面上。 论坛用户权限设置模块 其中,户登录之后有三种不同的权限,第一种权限是普通用户,第二种权限是某个论坛的版主,第三种权限是管理员权限。普通用户所拥有的权限是在论坛之中发表帖子,他在数据库表

19、UserInfo之中的UserLevel为0,是在三者之中所拥有的权限最低的一个。论坛版主所拥有的权限是在某个论坛之中充当版主的角色,对于在这个论坛之中所发表的帖子具有删除,修改的操作权限.对于版主所在的论坛之中的主题,该论坛的版主可以将其中某个主题设为置顶帖子,也可以逆向操作,把已经置顶的帖子进行取消置顶的操作。对于其他论坛而言,他不是版主,所以也就不具有上述这些对帖子进行如上操作的权限,他在数据库表UserInfo之中的UserLevel为1,是第二个等级。管理远所拥有的权限是对于整个系统的管理,他可以对于论坛中所注册的用户进行审核,判断那些用户可以使用这个系统,如果不符合要求,管理员就可

20、以将其删除。除此之外,管理员还可以吧普通用户提升成为某个论坛的版主甚至是和自己级别一样的管理员。同样的,管理员还可以把已经提升的权限取消,把管理员或者版主降至普通用户。对于帖子的管理,管理员也拥有高于上述两种权限设置的能力,他可以对于任何一个论坛之中的帖子进行修改,删除。对于任何一个论坛之中的某个主题可以进行置顶以及取消置顶的操作。他在数据库表UserInfo之中的UserLevel为3是在三者之中所拥有的权限最高一个。 帖子管理统计模块在这个模块之中,对于某个新建论坛而言,其中只要有人发表过帖子,帖子的 信息就会自动显示在网页上面,包括帖子的作者,发表时间,最后的回复者,该帖子被回复的次数。

21、3 系统分析及设计3.1 系统设计以及实现3.1.1 设计思想本次我采用的毕业设计语言为c#1-3语言,之所以采用这种语言,是引文我们在暑假工程实训的时候做的系统也用的是这种语言,对此种语言和.net平台相对其他语言来说比较熟悉。C#语言自C/C+演变而来。但是,它现代、简单、完全面向对象和类型安全。如果您是C/C+程序员,学习曲线将会很平坦。许多C#语句直接借用您所喜爱的语言,包括表达式和操作符。假如不仔细看,简直会把它当成C+。关于C#最重要的一点:它是现代的编程语言。它简化和现代化了C+在类、名字空间、方法重载和异常处理等领域。屏弃了 C+的复杂性,使它更易用、更少出错。对C#的易用有贡

22、献的是减少了C+的一些特性,不再有宏、模板和多重继承。特别对企业开发者来说,上述功能只会产生更多的麻烦而不是效益。使编程更方便的新功能是严格的类型安全、版本控制、垃圾收集(garbage collect)等等。所有的这些功能的目标都是瞄准了开发面向组件的软件。本课题是开发实现一个BBS论坛系统,使其拥有一般BBS都具有的一些基本功能。下面是本课题的bbs论坛系统的系统结构图:BBS论坛系统会员注册和登陆模块文章和帖子显示模块发表帖子模块论坛管理模块论坛管理子模块用户权限管理子模块会员注册子模块会员身份验证以及登陆子模块图3.1 BBS系统结构图3.1.2 系统的实现首先,我们来看会员注册和登陆

23、模块。此模块中,包括会员注册和会员身份验证以及登陆这两个子模块。会员注册子模块的功能是让第一次来到这个论坛的用户进行自己用户名的注册以及密码的设置。新注册的用户的用户名和密码会被添加到数据库中的Userinfo表中。这样就保存了新的用户名和密码。其中,用户名和密码都不能为空,也就是一定要填写自己的用户名和密码。否则用户将不能登陆此论坛。如果强行登陆,则会自动跳转到错误页面。接着我们来看用户身份验证以及登陆子模块。此模块是建立在用户已经注册的基础之上。用户注册了新的用户名和设置了自己的密码之后,在登陆界面打入自己的用户名和密码,如果用户名和密码于先前设置的用户名和密码吻合,用户就可以成功登陆进入

24、论坛了,否则系统就会自动跳入错误页面,用户这时候就会意识到自己的用户名和密码是否正确,然后再进行修改。实现代码如下显示:public String VerifyUser(String name,String pwd) DataSet ds = sa.getDataset(select User_No,User_Name,User_Password from Table_UserInfo); DataTable dt = ds.Tableslist; for (int i = 0; i dt.Rows.Count; i+) DataRow dr = dt.Rowsi; if (dr1.ToStr

25、ing() = name & dr2.ToString() = pwd) return dr0.ToString(); return null;在这个模块之下,还有一项功能是给用户修改自己的密码。登陆过论坛的人都知道,如果觉得自己的密码不安全,可以选择修改自己的密码。具体实现是通过对数据库的操作,在数据库中用新的密码代替掉原来的密码。具体实现代码如下:public Boolean UserChangePassword(String username,String oldpwd,String newpwd) SqlAccess sa = new SqlAccess(); SqlCommand c

26、md = new SqlCommand(ChangeUserPassword, sa.con); cmd.CommandType = CommandType.StoredProcedure; SqlParameter param; param = new SqlParameter(username, SqlDbType.NVarChar); param.Direction = ParameterDirection.Input; param.Value = username; cmd.Parameters.Add(param); param = new SqlParameter(oldpwd,

27、SqlDbType.NVarChar); param.Direction = ParameterDirection.Input; param.Value = oldpwd; cmd.Parameters.Add(param); param = new SqlParameter(newpwd, SqlDbType.NVarChar); param.Direction = ParameterDirection.Input; param.Value = newpwd; cmd.Parameters.Add(param); sa.con.Open(); cmd.ExecuteNonQuery(); s

28、a.con.Close(); return true; 修改密码界面如下:图3.2 修改密码界面上图中,只要用户输入你的用户名,在请输入要修改的密码一栏写下自己以前的旧密码,然后在请输入新密码一栏中填写自己想要修改的新密码,点击修改按钮,就可以成功修改自己的密码了。需要注意的是,用户下次登陆的时候要键入自己的新密码才能成功登陆论坛,否则将不能登陆论坛。然后是发表帖子模块。在此模块之中,用户先要选择自己所要发表帖子的某个子论坛模块。接着进入选中的子论坛模块,这个时候就跳转到了这个子论坛的页面。在此页面之下,有这个子论坛之中的各个主题提供用户选择。用户可以选择发表新的主题。在这个页面之下点击发表新

29、帖按钮,用户就可以发表新的主题了。用户也可以选择进入某个主题之中,点击快速回复按钮,然后发表自己对于这个主题的看法,见解。在用户发表了新的主题或者对于某个主题的回复之后,如果对于自己发表的言论有些不满,想要进行修改,在每个用户发表的帖子前面都有这个帖子的发表者和发表时间以及内容。在内容下方有两个按钮,分别是修改该贴和删除该贴。用户可以对于自己发表的帖子进行内容上的修改或者整个把它删除掉。如果用户修改过自己所发表的帖子,在修改过的内容下方会显示出来用户修改该贴的时间。具体操作见下图:图3.3 发表帖子模块如上图所示,用户进入了某个子论坛页面之后,界面右上角会出现一个红色的按钮“发新帖”,点击后就

30、可以进入发帖页面了,发帖页面如下图所示:图3.4 发帖界面如上图所示爱,在标题栏内填入用户所想发表的帖子的名字,在内容中写入自己的回复内容,点击提交按钮,就可以成功发表新的主题了。在帖子发表模块之后,我们来看下论坛管理模块。论坛管理模块一般都是论坛系统的核心部分,因为论坛的管理对于一个论坛而言有着决定性的作用。本课题实现的论坛管理模块具有两个子模块,他们分别是论坛管理子模块和论坛用户权限管理子模块。这两个模块是相对互相独立但是又是紧密联系在一起的。首先,想要可以管理论坛,必须拥有一定的管理权限,比如管理员或者某个子论坛的版主,当拥有了某个权限之后,才能开始管理论坛。在本课题所实现的论坛系统之中

31、,用户登陆以后可以使用的权限有4种,分别是游客,普通用户,某个子论坛的版主以及管理员。在这4种权限之中,先来看下游客的权限设置。游客就是没有进行用户的注册,在论坛中他所拥有能够使用的功能最少,只有一项,那就是浏览别人发的帖子。对于别人的帖子不能进行修改,删除,回复等操作,只能够观看别人的言论。下面我们来看下第二个等级的用户权限:普通用户。这个权限也是绝大多数所使用论坛的用户所具有的权限。普通用户所具有的使用功能比起游客来说多了一些。除了可以浏览别人发的帖子之外,普通用户还可以在某个子论坛下发表自己喜欢的主题,欢迎别的用户进来讨论。对于别人所发表的主题,普通用户如果愿意还可以在其发表的主题之下进

32、行留言,发表自己对于这个主题的看法。普通用户还可以对自己所发表的主题或者对于别的主题所进行的评论进行修改,删除等基本操作。但是对于别人发表的帖子或者对于某个主题的回复,普通用户只能浏览,不能进行修改或者删除,只有高于普通用户的权限等级用户才能进行如上的操作。接下来的是第3个等级的用户权限:子论坛的版主。子论坛的版主在某个子论坛之中所拥有的可操作功能是最多的。他除了可以使用普通用户所用友的一切功能之外,还可以对于他所负责的那个子论坛之中所有的主题,回复进行修改,删除等操作。这样的话,他的存在就可以从某种程度上减轻了整个论坛管理员的负担,这也是为什么这么多的论坛系统都设置了某个板块的版主的重要原因

33、之一。但是版主这个权限也是有其受限制的地方,那就是对于不归他关的那些子论坛板块,他所用友的权限和普通用户都一样,不能对于那个子论坛下面的主题进行自己想要进行的删除,修改等等操作。只能够浏览帖子,发表回复。只有那个板块的版主才能对于其中的主题进行相关的操作。下面我们来看下整个论坛中权利最大的用户:论坛总管理员的权限吧。论坛管理员是对于一个论坛来说最重要的使用者。如果一个论坛出现了什么问题,一般的用户都会寻求管理员来进行解决。而且管理员在整个论坛系统中所可以使用的功能也是最多的。论坛是一个大众汇集的地方,任何人都可以发表自己的想法,见解。在这之中不排除有些人故意散播一些不当的言论。这个时候我们就需

34、要有人去进行约束与管理。管理员的最用在这个时候就体现出来了。本课题实现的系统中,管理员对于在任何子论坛模块之中所有的被发表的主题和回复都有删除,修改功能。不受任何的约束。这样一来,一经发现有些不当的言论的时候,管理员可以在第一时间对其进行操作。相信在绝大多数的网上公共论坛系统之中,管理员都会拥有这些基本的操作权限。正因为管理员可以拥有那么强大的操作权限,所以在选择管理员的时候,应该对其品行进行一些考验,测试一下他是否符合当管理员的标准,是否能胜任这个对于真个论坛而言至关重要的角色。因为一旦管理员犯了某些错误或者不负责任的话,对于整个论坛而言将是一件非常危险的事。本课题所实现的论坛系统中,管理员

35、除了对于论坛的内容进行管理之外,还可以对于论坛的所有用户进行管理。如果一个用户是普通用户,他如果对于某个子论坛的内容感兴趣,并且愿意帮助管理员一起管理论坛的话,可以向管理员提出申请,管理员对他进行了审核之后可以吧他提升为这个子论坛模块的版主,这样一来,这位版主就可以有效的为管理员分担掉很大一部分的工作,在这个子论坛之中行使和管理员接近的工作。具体实现代码如下所示:public bool SetMaster(String userno,String listno) String cmdstring = update Table_UserInfo set User_Level=1,User_Mas

36、terList_No=+ listno + where User_Level!=2 and User_No= + userno; sa.ExcuteString(cmdstring); cmdstring = null; return true; 当管理员认为这个版主不能胜任工作的时候,也可以把他的权限降成普通会员,具体实现代码如下:public bool CancelMaster(String userno) String cmdstring = update Table_UserInfo set User_Level=0,User_MasterList_No=null where User

37、_Level=1 and User_No= + userno; sa.ExcuteString(cmdstring); cmdstring = null; return true; 在一个论坛系统之中,有可能存在1个以上或者更多的管理员,这个时候当别的管理员某段时间内由于其他事情不能对论坛进行有效的管理的时候其他的管理员就可以在这个时候行使管理员的责任了,本课题之中管理员也可以把普通用户提升为管理员。具体实现代码如下:public bool SetAdmin(String userno) String cmdstring = update Table_UserInfo set User_Lev

38、el=2 where User_Level!=1 and User_No= + userno; sa.ExcuteString(cmdstring); cmdstring = null; return true; 和子论坛版主的设置一样,管理员也可以对已经被提升的管理员进行降职,具体实现代码如下:public bool CancelAdmin(String userno) String cmdstring = update Table_UserInfo set User_Level=0 where User_No= + userno+ and User_Level=2; sa.ExcuteSt

39、ring(cmdstring); cmdstring = null; return true;对于某些屡教不改的用户来说,他们的存在已经严重威胁到了论坛其他用户的言论自由以及整个论坛的和谐,这个时候管理员可以将这些用户进行删除,他们就不能够再在论坛之中散播一些不当的言论,影响其他用户对于论坛的使用。具体的实现代码如下显示:public bool DelUser(String userno) String cmdstring = update Table_UserInfo set User_Name=null where User_No= + userno; sa.ExcuteString(cm

40、dstring); cmdstring = null; return true; 具体几面截图在下面各单元模块设计之中会有截图显示在这里就不重复发图了。最后,我们来看下文章和帖子显示模块。在这个模块之中,它的主要作用是让用户们所发表的帖子以及回复正确的显示出来。我们知道在一个论坛之中,有些帖子是对于新来到这个论坛的用户必读的帖子,通常情况下,我们会吧这些帖子放在醒目的位置便于用户阅读,这些帖子被称为精华帖或者置顶帖。在本课题所实现的bbs论坛系统之中,在某个子论坛板块之下,对于某些主题也拥有此项功能。但是作为普通用户,是不能够对这些帖子进行操作。只有这个板块的版主或者整个论坛系统的管理员才能将

41、自己觉得重要的帖子或者写的非常精彩可以供大家借鉴学习的帖子设置为置顶帖子。当然,如果管理员认为这个帖子已经没有置顶的意义了,被设置为置顶的帖子也可以被取消置顶。具体界面如下图:图3.5 未置顶帖子时的回复界面图3.6 设置了置顶帖子之后的回复界面从上面2张图片可以清晰的看出,主题“vvvvvvv”在未设置置顶和设置了置顶之后的回复界面。3.1.3 论坛系统说明此网上论坛中三种不同角色游客、注册用户管理员分别可现: 游 客:查看帖子、注册新用户。注册用户:查看帖子、发新帖子、回复信息。管理员:帖子管理、用户管理、数据库管理。3.1.4 论坛系统总体分析通过上面的功能说明,我们可以将论坛的制作分为

42、四大部分:(1) 会员注册和登陆模块:这个模块的功能,就是新来网友可以填写注册资料 ,通过审核后便成为本论坛的正式会员,并可以以会员身份登陆论坛。(2) 文章和帖子显示模块:显示所有会员最新发表的一些文章主题。(3) 发表文章和帖子模块:为会员提供发表文章的地方,以及回复主题等。(4) 论坛与用户管理模块:版主以上职务可以进行对文章和用户进行处理,查询,修改,删除等。了解了具体的功能需求后,就可以按模块的开始论坛的设计了。当然,这些模块的只是在功能上对论坛结构的划分,实际上并不能够完全的把他们独立出来进行设计。因为每个模块之间都会有或多或少的联系。对于这种较小的应用,也没有必要进行完全的模块化

43、设计,在良好的规划下直接写程序代码或许来的更为简单一些。3.2 数据库设计在建设网站系统之前,我们必须对系统所用到的数据进行大致的分类和具体的结构设计,既要做到清晰明了,又要能适应系统各项功能的调用,而不至于产生结构上的逻辑混乱,保证关键数据在意外情况下不会被破坏,可以说数据库是系统的重中之重。数据库设计要遵循一些规则,一个好的数据库满足一些严格的约束和要求。尽量分离各实体对应的表,一个实体对应一个表,分析该实体有哪些属性,对应有些什么字段,以及各实体之间的联系。实体、属性与联系是进行概念设计时要考虑的三个元素,也是一个好的数据库设计的核心。在SqlServer中建立名为BBS的数据库,在其中

44、建立3个表:1 Table_PostInfo2 Table_SubjectList3 Table_UserInfo下面列出本课题中所用到的3张数据库信息表格:表3.1 帖子的信息表字段名称说明数据类型是否为空是否主键Post_no帖子序列号Int否是Post_title帖子标题nvarchar是否Post_content帖子内容nvarchar是否Post_date发表日期datetime是否Post_autherNo帖子作者序列号int是否Post_fatherNo上级主题序列号int是否Post_replyedTimes回复时间datetime是否Post_broweredTimes浏览时

45、间datetime是否Post_lastReplyNo最后回复者序列号int是否Post_modifyDate修改日期datetime是否Post_InSubjectNo从属主题序列号int是否Post_OnTop是否置顶tinyint是否Post_lastReplyDate最后回复日期datetime是否上面的表格3.1是现实了在某个子论坛板块之中所有主题在数据库之中的信息,其中包括了13个字段名称。每个字段名称对应了发表的主题的信息,比如发表时间,作者,回复者等等一系列的基本信息。表3.2 发表主题的信息表字段名称说明数据类型是否为空是否主键List_No子论坛列表序列号Int否是List

46、_Name子论坛列表名称Nvarchar是否List_PostNo子论坛下的帖子序列号Int是否上面的表格现实了某个子论坛的所有信息,其中包括了这个子论坛在数据库之中的序号,名称以及在这个子论坛之中的主题序号。表3.3 用户信息表字段名称说明数据类型是否为空是否主键User_No用户序列号Int否是User_Name用户名Nvarchar是否User_Password用户密码Nvarchar是否User_PostNo用户发表帖子序号Int是否User_Level用户权限Int是否User_MasterList管理员列表int是否上面的表格现实了用户的信息,其中包括了用户的序号,名称,密码,发表

47、帖子的序列号,用户等级(也就是权限)以及管理员的列表。接下来是数据库的连接。只有和数据库连接之后,用户才能真正的实现对论坛功能的操作使用。下面是本次课题之中ASP连接Sqlserver数据库语句:Set conn = Server.CreateObject(ADODB.Connection) conn.Opendriver=SQLServer;server=localhostSQLEXPRESS;uid=user;pwd=password;database=BBS;conn open;其中Set conn = Server.CreateObject(ADODB.Connection)为设置一个

48、数据库的连接对象,driver=()告诉连接的设备名是SQL-SERVER ,server是连接的服务器的ip地址,Uid是指用户的用户名,pwd是指的用户的password,database是用户数据库在服务器端的数据库的名称。3.3 各单元模块设计3.3.1 用户注册登陆功能此部分是实现用户的注册功能。通过填写注册资料,正确填写后,点击注册按钮后便可注册成为正式的会员。如图3.7图3.7新用户注册图3.3.2会员发贴与回复功能此部分实现会员的发表新帖以及回帖等功能。发表帖子会员只针对会员开放,如果想发表新的主题,必须登陆如果没有账号必须注册以后便可直接点击发表帖子按钮。图3.8用户发帖与回

49、复功能图如上图中,主题下面的3个列表都可以进入,然后再这其中某个主题之下发表自己的留言,感想等。下面我们进入其中的dsdsd主题如下图所示:图3.9回复主题界面 成功回到显示主题页面 再点击主题会看到主题贴的相关内容和回复内容。回复帖子只针对会员以及会员等级以上的用户开放,游客不可以回复主题。3.3.3 管理员管理帖子与用户管理功能这个模块主要是管理员对论坛的帖子和会员进行综合管理,删除、编辑、查询、等等。普通会员是不可以进行此操作的。具体功能请看图3.4图3.10 管理员对于论坛中发表论坛的管理如图,所有子论坛的序号以及名称都会现实在此页面之中,如果想要修改一个子论坛的名称,只需要在页面中键

50、入想要改的这个论坛的序号,以及新的论坛名臣,然后点击确认修改按钮,改论坛的名称就可以被修改了。如果想要删除一个子论坛,只需键入这个论坛的序号,不用再次输入此论坛的名称了,再点击确认删除按钮,就可以成功删除想要删除的子论坛了。添加一个论坛时,只需键入想要新添加的论坛的名称就可以了,这个新加入的子论坛的序号是顺序排在前面所有子论坛之后的。以上这些功能只针对管理员权限的用户开放。在以上3.1.2论坛的实现之中已经有详细的描述。图3.11上图显示了管理远对于用户权限管理操作的界面。如图,在页面的最上方现实了用户在数据库之中的信息。如果管理员想进行删除用户,设置管理员,取消版主,取消管理员的操作,只需键

51、入这个用户的用户序号就可以了。如果想设置某个子论坛的版主,除了需要键入此用户的用户序号之外,还需要键入想要使其成为版主的这个子论坛板块的序号,然后点击确认设置按钮就可以了。具体的实现在3.1.2系统的实现之中有详细的描述。3.4 系统测试经过上述的设计,本课题之中所想要实现的各个模块的功能能已经基本实现,在程序运行过程中没有出现重大的BUG,基本能够完成预定的系统目标,但是还有某些地方做的不是那么完美。比如说删除帖子模块之中,如果删除了一个帖子,只是让其在页面之中不现实出来,返回控值,但是数据库之中还是保存有这个帖子的信息。这样一来,如果论坛的访问量过大,就有可能造成大量的数据冗余,造成服务器

52、的不必要的负担。这是由于在开发设计阶段没有考虑周全造成的。所以在下次的项目开发之中,会吸取这次的经验教训,更加完善自己的系统。3.5 本章小结本章主要分析了项目需求及现存问题和开发目标,阐述开发系统要实现的基本功能及功能的实现方法;完成系统功能设计、系统结构设计和数据库表结构设计,主要实现对用户登录及对用户自身权限进行管理,提供数据的录入、删除、添加等功能。通过本章的开发与实现,让我对于ASP.NET有了一定的了解,4 结论本毕业设计从开题到完成论文,总耗时近四个月。通过这次毕业设计的锻炼以及毕业论文的撰写,让我学习到了许多。首先,使得我在平时在课堂上所学习到的东西得到了一次实践的机会,让我体

53、验到了实践与理论结合才能发挥巨大的作用这句话的真正含义。在整个开发过程中,遇到了一些问题阻碍了开发工作的实行。这个时候我向同学进行了请教,他们也很热心的帮助了我,在通过了他们的帮助以及自己的努力之下,工作渐渐有了起色。同时,在这个系统的开发过程之中,我的指导老师戴牡红老师给了我很大的帮助。让我得以在规定时间之内完成了毕业设计,达到了规定的要求。本次的毕业设计,在老师和同学的悉心指导之下,由本人独立完成。纵观整个历时4个月的开发过程,不仅让自己的专业技能有了很大的提升,而且让我的知识面有了很大的拓展,为以后踏上工作岗位打好了坚实的基础,从中获益匪浅,将使我受益终身。致谢首先,感谢学校给了我一次锻

54、炼自己的机会,并感谢学校的严格要求。通过整个设计的过程,我在计算机理论和实践方面都有了很大提高。在对本系统的整个开发过程中,得到了指导老师的帮助。在系统测试的整个阶段,作为本次毕业设计的指导教师xx老师给予了我很大的帮助,自始至终都关注着开发工作的进展,从总体上给予指导,并为具体开发提出了许多宝贵意见,使得我在系统测试之中可以顺利通过。没有老师的帮助和指导是不可能完成这项设计任务,在此向xxx老师致以最衷心的感谢。在此表示我对所有帮助过我的老师和同学衷心的感谢。最后,衷心感谢各位评审老师。参考文献1 Nothin but ASP.NET Page Output Caching, Part 1R

55、ob Howard ,Microsoft Corporation March 20, 20022 Internet Security Systems. 2002 November 18 (Revised). X-Force Vulnerability Disclosure Guidelines.3 Matt Blaze. 2002 September 15 (Preprint, revised 2003 March 02). Cryptology and Physical Security: Rights Amplification in Master-Keyed Mechanical Loc

56、ks. IEEE Security and Privacy (March/April 2003). 4 Wenliang Du,Aditya P. Mathur. Vulnerability Testing of Software System Using Fault Injection.Coast TR 98-02, 1998.5 Elias Levy. 2001 October 21. “Security in an Open Electronic Society.” SecurityFocus. 6 Ross Anderson. 2001. Security Engineering: A

57、 Guide to Building Dependable Distributed Systems. John Wiley & Sons. ISBN: 0-471-38922-6.7 杨宏伟,李晶.C#程序员开发手册M.北京:科学出版社,2006:152-153.8 (美) Bill Wagner著.Effective C#中文版:改善C#程序的50种方法M.北京:人民邮电出版社,2007:50-52.9 金旭亮著.编程的奥秘:.NET软件技术学习与实践M.北京:电子工业出版社,2006:302-303.10 Russ Basiura .ASP.NET Web服务高级编程M.北京:清华大学出版

58、社,2005:102-104.11 Karli Watson,齐立波.C#入门经典M.北京:清华大学出版社,2004:22-23.12 石志国.ASP.NET应用教程M.石志国教程,2006:25-26.13 林金霖.ASP实务经典M,中国铁道出版社,1999.14 萨师煊、王珊.数据库系统概论(第二版)M.上海:高等教育出版社, 1991.15 沈建强、夏耘 Photoshop图像处理速成培训 1999/717 陈运海. 基于ASPNET Web服务的XML数据转换技术J. 计算机系统应用,2006,(5): 91-94.18 虞芬,陈静茹.基于.NET的电子商务系统的设计与实现J. 商场现代化,2006,5(67): 158-159.19 唐晏. ASP.NET页面之间数据传递的实现J. 计算机应用研究,2006,80(5):228-230.20 肖建.ASP.NET编程实例与技巧集粹M. 北京:北京希望电子出版社,2003.21 杨智泽.简论提高ASP.Net应用程序性能的六种策略J.微电子学与计算机,2006, 23(7):161-163.22 Juval Lowy著.Net组件程序设计M.北京:电子工业出版社,2007:221-223.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!