毕业设计-基于ASP的BBS论坛系统的设计和实现.doc_第1页
毕业设计-基于ASP的BBS论坛系统的设计和实现.doc_第2页
毕业设计-基于ASP的BBS论坛系统的设计和实现.doc_第3页
毕业设计-基于ASP的BBS论坛系统的设计和实现.doc_第4页
毕业设计-基于ASP的BBS论坛系统的设计和实现.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文) 基于基于 aspasp 的的 bbsbbs 论坛系统的设计和实现论坛系统的设计和实现 asp-based bbs forum system design and implementation : : 计算机科学与技术 : 计算机 06-1 : : 讲 师 : 2010 年 6 月 20 日 学生姓名 所学专业 所在班级 指导教师 教师职称 完成时间 计算机科学与技术系毕业设计(论文) 摘摘 要要 随着 internet 的发展和计算机的普及,我们对它的认识也越来越客观化, 虽然它不能改变我们的生活本质,但它们还是在潜移默化的改变着我们的生活方 式,而 bbs 论坛就是在此背景下诞生了。我所设计的 bbs 论坛主要是给用户提供 一个比较相对自由、放松心情的交流平台,实现了用户的注册、登陆、查看论坛 访问量信息以及发表自己的观点、回复别人的发帖和管理自己帖子等功能。用户 登录本论坛以后可以发帖和回帖,也可以对自己的个人信息进行修改,也可以修 改和删除自己发表的帖子,并该论坛还支持用户上传图片等功能。论坛的管理员 不仅仅是管理论坛,还要对所有帖子进行评析,删除不健康或者反对国家政策的 帖子,给用户提供一个积极健康、相对自由的交流环境。管理员可以增加一些社 会的敏感问题、民生问题、焦点问题等,供大家来讨论分析,这也是我们政府部 门体察民情的一个非常好的途径,对社会起到了一定积极作用。具体的本系统采 用了应用最广泛的网站构建技术 asp(active server pages,活动服务器页面) , 选择了计算机领域的经典组合 asp+sql server 进行开发,并使用了 vbscript 脚 本语言完整的实现了系统的设计功能,而且该系统可以整合到任何综合网站为其 提供了强大的生存空间。 论文主要介绍了本系统的开发背景,所完成的功能以及实现过程,重点描述 了系统设计的总体思想,运行结果。 关键词bbs 论坛 asp vbscript 脚本语言 计算机科学与技术系毕业设计(论文) abstract with the development of internet and computers, we would understand it more and more objectivity, although it can not change the essence of our lives, but they are still subtly changing our way of life, and bbs forum is here background was born. i bbs forum designed primarily to provide a more relative freedom and relaxation platform, to achieve the users registration, login, view the forum traffic information and express their views, post and reply to other people manage their own posts and so on. users can login to this forum posting and replies later, can also modify your personal information, you can also modify and delete their own post, and the forum also supports users to upload images and so on. forum management forum administrators only, but also carry out assessment of all posts to remove unhealthy or against the post of national policy, to provide a positive, healthy, relatively free exchange environment. administrators can increase the number of sensitive social issues, livelihood issues, focus issues for everyone to discuss the analysis, this is our government sympathetic a very good way, and played a certain positive role in society. the system uses a specific application of the most extensive site construction technology asp (active server pages, active server page), select the computer in the field of classical combination of asp + sql server to develop and use the vbscript scripting language is fully implemented on the system design features, and the system can be integrated into any comprehensive website to provide a strong survive. paper introduces the development background of this system, the complete functionality and implementation process, focused on describing the general ideas of system design, operation results. keywords:bbs forum asp vbscript scripting language 计算机科学与技术系毕业设计(论文) 目目 录录 1 1 绪论绪论 1 1.1 概述 .1 1.2 项目开发的目的 .1 1.3 bbs 的历史 .2 1.4 国内 bbs 的现状与展望 .2 2 需求分析 3 2.1 可行性分析3 2.2 功能分析6 3 总体设计 7 3.1 系统的总体目标 .7 3.2 系统功能模块设计 7 3.3 功能框图 8 4 数据库设计 .10 4.1 设计思想 11 4.2 创建数据表 11 4.3 数据库设计说明 14 5 详细设计 .16 5.1 公用模块的设计 16 5.2 前台模块的设计 .17 5.3 后台模块的设计 24 6 测试 .27 6.1 单元测试 28 6.2 集成测试 .28 6.3 确认测试 28 6.4 系统测试 29 7 总结 .29 参考文献 31 致 谢 32 计算机科学与技术系毕业设计(论文) 1 绪论 1.1 概述 bbs(电子公告板)诞生时,是一种基于 telnet(远程登录)协议访问的互联网应用形 式。随着计算机技术的高速发展和日益普及,尤其是 web 服务的兴起发展,bbs 的含义 和功能也在不断发生变化,基于 web 的 bbs 开始强调主题性和交流性,于是诞生了 forum(论坛)。它通过在计算机上运行服务软件,允许用户使用终端程序通过电话调制解 调器拨号或者 internet 来进行连接,执行上传数据、阅读新闻、与其它用户交换消息等 功能。 bbs 多用于大型公司或中小型企业 ,开放给客户交流的平台 ,对于初识网络 的新人来讲,bbs - 就是用于在网络上交流的地方 ,可以发表一个主题 ,让大家一起 来探讨,也可以提出一个问题 ,大家一起来解决等 ,是一个人与人语言文化共享的平台, 具有实时性、互动性。 bbs 是一个有很多人聚在一起聊天的可供自由交流的公共场所,通过论坛系统可以 发布信息、阐述观点、与别人讨论各种话题。在 bbs 里,人们之间的交流打破了空间、 时间的限制,在与别人进行交往时,无须考虑自身的年龄、学历、知识、社会地位、财 富、外貌,健康状况,而这些条件往往是人们在其他交流形式中无可回避的。同样地, 也无从知道交谈的对方的真实社会身份,此外一些专业性质的论坛也成为学习和讨论专 业技术的实时课堂。这样,参与 bbs 的人可以处于一个平等的位置与其他人进行问题的 探讨,这对于现有的所有其他交流方式来说是不可能的。 1.2 项目开发的目的 在随着网络时代的来临,各种形式的论坛也随之诞生了,每天都会有新的网站建立, 各种信息五花八门,甚至匪夷所思,这就给论坛带来了生机。在网络上论坛是一个自我 发泄、自我训练、获取信息、体察社情、交流思想、联络同好的交流平台,在论坛上网 友的发帖中,我们能得到有益的教诲和启发,网友关于国家、对社会的有益的观点,有 时也能被有关部门采纳,而不是网友空自评论,自艾自叹,自喜自悲,这也是我们政府 部门体察民情的一个非常好的途径,甚至有一些论点能做到各方观点正确公平的显示, 很具有参考价值。论坛具有知识性、趣味性、公平性和谐性等优点,论坛给所有的网民 都提供了交流的平台,为网络的互动性作出了巨大的贡献,通过论坛,网民们得以更方 计算机科学与技术系毕业设计(论文) 便的交流,更便捷的发表自己的观点,而且发布信息都是通过有记录的文字来进行,所 以这样也避免了精华内容的流失。通过论坛来征得自己想要的信息,有更高的效率和时 效性。也最节约成本和资源,在论坛的交流过程中,无论喜怒哀乐都是在虚拟的环境中 进行,也避免的正面的尴尬和冲突等,在论坛中,可以演变成任何角色,变换多种身份, 因为网络的特征,使得人民更加依赖于论坛中的交流。 1.3 bbs 的历史 1978 年在美国芝加哥开发出一套基于 8080 芯片的 cbbs/chicago(computerized bulletin board system/chicago),此乃最早的一套 bbs 系统。之后随着苹果机的问世, 开发出基于苹果机的 bulletin board system 和大众信息系统(people,s message system)2 种 bbs 系统。1981 年 ibm 个人计算机诞生时,但是并没有自己的 bbs 系统。 直到 1983 年才改写出个人计算机系统的 bbs。这个 bbs 系统的最大特色是其源程序全部 公开,有利于日后的修改和维护,因此后来在开发其他的 bbs 系统时都以此为框架。 bbs 最早是用来公布股市价格等类信息的,当时 bbs 连文件传输的功能都没有,而 且只能在苹果计算机上运行。早期的 bbs 与一般街头和校园内的公告板性质相同,只不 过是通过电脑来传播或获得消息而已。一直到个人计算机开始普及之后,有些人尝试将 苹果计算机上的 bbs 转移到个人计算机上,bbs 才开始渐渐普及开来。而大约是从 1991 年开始,中国国内开始了第一个 bbs 站。经过长时间的发展,直到 1995 年,随着计算机 及其外设的大幅降价,bbs 才逐渐被人们所认识。 1.4 国内 bbs 的现状与展望 论坛的发展也如同网络一样,雨后春笋般的出现,并迅速的发展壮大。现在的论坛 几乎涵盖了我们生活的各个方面,几乎每一个人都可以找到自己感兴趣或者需要了解的 专题性论坛,而各类网站,综合性门户网站或者功能性专题网站也都青睐于开设自己的 论坛,以促进网友之间的交流,增加互动性和丰富网站的内容。例如 ,综合类论坛,它 包含的信息比较丰富和广泛,能够吸引几乎全部的网民来到论坛;专题类论坛 它能够吸 引真正志同道合的人一起来交流探讨,有利于信息的分类整合和搜集,专题性论坛对学 术科研教学都起到重要的作用。交流性的论坛又是一个广泛的大类,这样的论坛重点在 于论坛会员之间的交流和互动,所以内容也较丰富多样,有供求信息,交友信息,线上 线下活动信息,新闻等,这样的论坛是将来论坛发展的大趋势。 计算机科学与技术系毕业设计(论文) 然而,论坛的弊端也是我们不容忽视的一个问题,首先 web2.0 时代的到来,博客 等功能性的网站也在普及,论坛逐渐失去了固有的地位,在慢慢的走下滑路,这个时候, 论坛的很多缺点也都暴露出来,如诚信危机,虚拟世界是否安全等,另外全民草根文化 形成的论坛型知识,不一定是准确和正确的,甚至有的存在严重错误,在论坛中学习虽 然便捷经济,但是知识的真实准确性很值得推敲。 另外,依赖上论坛中的交流,也使 得人与人之间面对面的沟通减少,这样又淡化了整个社会化的亲情和人际。而且论坛的 站长拥有很大的权力,因为是由纯文字组合而成,有权限的人甚至不用任何基础就能轻 易查看他人的个人资料。这样也对个人的隐私造成了严重的威胁。同时这也暴露出草根 文化中同样需要规则的约束,通常版主不能够像警察政府那样公道和专业全面的进行论 坛的管理,所以论坛中也会常常爆发出论坛管理人员与普通会员之间的冲突。 随着中国教育与科研网建设的不断发展,各高校都建设了良好的网络硬件环境, bbs 迅速在中国大陆各高校发展并广为流行。其 bbs 论坛具有普及率高、影响深刻、注 重管理等特点。但是在高校 bbs 论坛飞速发展的过程中,曾经出现一定程度的失范、紊 乱状态,这对网站的管理水平提出了更高的要求。如何遵循网络发展规律,使高校 bbs 论坛更加有序、健康地发展,成为当前 bbs 论坛建设和管理者需要思考探索的重要课题。 在这方面,我们可以借鉴西方比较成熟的管理经验与运作模式,同时结合自身的发展情 况,制定行之有效的网站管理机制,最后使高校的 bbs 论坛更加有序、健康地发展下去。 2 需求分析 需求分析的结果是软件开发的基础,分析结果直接关系到软件开发的成败和软件产 品的质量及使用寿命,它在接下来的软件开发过程中有决策性、方向性、策略性的作用, 其重要性不言而喻,对于复杂的软件系统,需求分析的重要性更加突出。本过程就是系 统分析员与用户共同协商,明确系统的全部功能、性能以及运行规格,让开发人员与用 户达成一致。 2.1 可行性分析 并不是所有的软件都能够开发成功或值得开发,为了防止软件开发中途夭折或最终 失败,导致大量的时间、经费、资源等的浪费,需要在软件开发前进行可行性分析,目 计算机科学与技术系毕业设计(论文) 的是以最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发, 最后给决策者提供做或不做的依据。 它通过各种有效的方法,对工程项目进行分析,如市场需求、建设规模、设备选型、 环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比 较,最终给投资决策者提供是否选择该项目进行投资的依据。可行性分析要站在咨询的 立场上,要有多种替代方案,对各种方案作经济比较,提出可能实施的具体措施,着眼 于资源的有效利用,站在中立客观立场上得出结论。以确定产品开发成功的可能性为目 的而进行的分析,可行性分析报告经评审通过后即作为提出系统开发建议书(或设计任务 书)的依据。 2.1.1 技术可行性 技术可行性分析主要是根据系统分析所得到的信息,对已有的或可以得到的硬件环 境、软件资源及现有的技术人员的技术水平和已有的工作基础进行评估,进而分析出现 有的资源是否能实现待开发的软件。它包括可得到的硬件和支撑软件在功能和性能上是 否满足系统的要求,是否有满足系统性能要求的算法,开发人员的技术水平能否胜任系 统的开发等等。 本系统运行基于 windows2000/windowsxp/windows2003 的操作系统,使用的主要开 发软件技术是 asp(active server page,动态服务器主页)和 internet 信息服务器 (internet information server,iis),后台数据库开发使用的是 sql server 2000。 asp 是微软公司开发的代替 cgi 脚本程序的一种应用,它可以与数据库和其它程序 进行交互,是一种简单、方便的编程工具。它可以用来创建和运行动态网页或 web 应用 程序。asp 网页可以包含 html 标记、普通文本、脚本命令以及 com 组件等。利用 asp 可 以向网页中添加交互式内容(如在线表单) ,也可以创建使用 html 网页作为用户界面的 web 应用程序。asp 文件是包含在 html 代码所组成的文件中的,易于修改和测试;服务 器上的 asp 解释程序会在服务器端执行 asp 程序,并将结果以 html 格式传送到客户端浏 览器上,因此使用各种浏览器都可以正常浏览 asp 所产生的网页;利用 asp 可以实现突 破静态网页的一些功能限制,实现动态网页技术; asp 提供了一些内置对象,使用这些 对象可以使服务器端脚本功能更强。由于服务器是将 asp 程序执行的结果以 html 格式传 回客户端浏览器,因此使用者不会看到 asp 所编写的原始程序代码,可防止 asp 程序代 计算机科学与技术系毕业设计(论文) 码被窃取。 其工作原理是用户向浏览器地址栏输入网址,默认页面的扩展名是.asp,然 后浏览器向服务器发出请求,当服务器引擎开始运行 asp 程序时,asp 文件按照从上到 下的顺序开始处理,执行脚本命令,执行 html 页面内容,达到页面信息发送到浏览器的 最终效果。 有的操作系统是自带的 iis,但是默认的情况下是不安转的,这是就需要自行手动 安装,其安装步骤如下: (1)打开“控制面板” ,然后单击启动 “添加/删除程序” , 在弹出的对话框中选择“添加/删除 windows 组件” ,在 windows 组件向导对话框中选中 “internet 信息服务(iis) ” ,然后单击“下一步” ,按向导指示,完成对 iis 的安装 (2)启动 internet 信息服务(iis) ,单击 windows 开始菜单-所有程序-管理工具- -internet 信息服务(iis)管理器,即可启动“internet 信息服务”管理工具。 (3) 配置 iis,iis 安装后,系统自动创建了一个默认的 web 站点,该站点的主目录默认为 c:inetpubwww.root。用鼠标右键单击“默认 web 站点” ,在弹出的快捷菜单中选择 “属性” ,此时就可以打开站点属性设置对话框,在该对话框中,可完成对站点的全部配 置。主目录与启用父路径 ,单击“主目录”标签,切换到主目录设置页面,该页面可实 现对主目录的更改或设置。注意检查启用父路径选项是否勾选,如未勾选将对以后的程 序运行有部分影响。主目录配置-选项。设置主页文档 ,单击“文档”标签,可切 换到对主页文档的设置页面,主页文档是在浏览器中键入网站域名,而未制定所要访问的 网页文件时,系统默认访问的页面文件。iis 默认的主页文档只有 default.htm 和 default.asp,根据需要,利用“添加”和“删除”按钮,可为站点设置所能解析的主页 文档。 sql server 是一个关系数据库管理系统,sql server 2000 是 microsoft 公司推 出的 sql server 数据库管理系统的最新版本,具有使用方便,可伸缩性好与相关软件集 成程度高等优点。sql server 2000 数据库引擎提供完整的 xml 支持。它还具有构成最 大的 web 站点的数据存储组件所需的可伸缩性、可用性和安全功能,同时,在 web 应用 程序中包含了用户友好的查询和强大的搜索功能。其企业版支持联合服务器、索引视图 和大型内存支持等功能,使其得以升级到最大 web 站点所需的性能级别。sql server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和 使用 sql server 的过程,及其的方便、快捷、简单。 计算机科学与技术系毕业设计(论文) 系统开发的整个过程是由本人独自完成的,本人已修完本专业所有的专业基础课和 专业课,系统的学习过数据库的开发过程,并阅读了大量的相关书籍,非常熟悉上述开 发环境,有一定的软件开发能力和编程能力。所以,对本系统的开发技术上非常成熟的。 2.1.2 经济可行性 经济可行性的研究主要是估算软件开发成本和将取得的经济效益,确定项目是否值 得开发,即进行成本效益分析,首先是估算将要开发的系统的开发成本,然后与可 能取得的效益进行比较和权衡。对于具有很大社会意义的项目,除经济效益外,还需考 虑社会效益,把社会效益带来的经济效益也计算在内。 硬件设备:需要数据服务器一台:6000 元;软件: windows xp 操作系统,iis 安 装包,sql server 2000 ,word2000,网络。 本 bbs 论坛系统,可以独立在网站上运行,为上网的人们提供服务,也可以整理综 合到其他的大型网站,以减少其开发成本,同时可以在页面上附加广告,作为长期投机 回报。因此,本系统在经济可行性方面是值得开发的。 2.1.3 社会可行性 本系统是基于微型计算机图形界面的操作,所以一般能够熟练使用电脑的人群,都 可以使用本系统进行操作,及本论坛的设计功能,以达到自己的需求和目的。对于系统 的管理员,没有特殊的技术要求,也不要求培训,但是,管理员必须有很强的责任心, 有一定的社会责任感。 系统严格的按照合同法、专利法、知识产权保护法等对其进行自主开发,不会触犯 到国家法律,和他人的经济利益,所以在法律上是可行的。 综上述几方面的研究,在技术、经济、操作等方面的可行性均已成熟,所以得出 结论:本系统可以进行开发。 2.2 功能分析 本系统的总体目标是向广大的网民提供一个交流的平台,人们在这里可以畅所欲言, 说自己想说的话,抒发自己真实的感情。用户能够查看当前论坛的访问量,搜索自己需 要的相关帖子信息,也可以发帖,回复别人的帖子,可以修改和删除自己的帖子与回帖。 计算机科学与技术系毕业设计(论文) 管理员可以添加新的版块信息,管理所有的帖子信息,起到一个舆论导向的作用。最终, 开发出一个功能齐全、合理、完善的 bbs 论坛系统。 2.2.1 未注册用户功能区 可以浏览论坛上的帖子信息和帖子回复信息,可以在论坛内搜索符合指定条件的帖 子,并查看帖子及其回复的相关信息,还可查看系统访问量,以及未注册用户进行注册。 2.2.2 注册用户功能区 用户凭借正确的账号和密码正常登陆该系统,除享有未注册用户具有的权限外,还 可以撰写新的话题,发表自己的观点、看法或者自己想说的话,即进行发帖。回复别人 的帖子,同意或不同意,也可以进行评论、分析,加以补充完善。当用户不满意自己的 注册信息或填错信息时,用户可以进行查看,并修改个人注册信息。用户可以查看自己 曾经发表过的帖子,如果发现其有错误或者表达片面,可以修改自己的帖子,或删除, 当然觉得自己的回帖有不妥的地方,也可以进行修改,或者直接删除。 2.2.3 管理员功能区 管理员通过输入的账号和密码正常登陆该系统,除享有注册用户具有的权限外,还 可以对论坛栏目板块进行管理,当社会上出现大的事件或活动时,管理员可以及时的添 加新的版块,供人们讨论,例如地震版块、08 奥运会版块、世博版块、世界杯版块等, 都是我们比较关注和比较关心的社会问题,同样,管理员还可以对论坛内的所有帖子及 回贴进行管理,删除一些过时的或者失去其意义的帖子。 3 总体设计 3.1 系统的总体目标 通过网络这个虚拟的世界,开发一个相对比较自由、心情放松的人与人之间交流的 平台。在这里,人们之间的交流打破了空间、时间的限制,在与别人进行交往时,无须 考虑自身的年龄、学历、知识、社会地位、财富、外貌以及健康状况,只需表达自己的 观点即可,给人已很大的交流空间。而管理员也可以进行讨论,同时对论坛进行管理, 能够使握论坛朝着一个健康有序的方向发展。 计算机科学与技术系毕业设计(论文) 3.2 系统功能模块设计 根据系统的功能需求,把系统功能详细划分出多个模块,各模块之间采用函数调用、 参数传递、返回值的方式进行信息和数据的传递,大大增加了程序的可读性,使系统的 功能结构更加清晰、明朗。 3.2.1 公用模块设计 此模块属于系统共用部分,系统中任何页面需要用此模块时直接调用即可。此模块 包括数据库连接文件、层叠样式表文件、数据转换和图片上传文件、常量文件和论坛访 问量统计文件。此模块负责与数据库的连接、定义页面风格、进行数据转换、图片上传 和统计论坛访问量。可以将这些公用的代码放在一个个文件中,这样即可以减少源代码, 也可以使整个系统紧凑有序。 3.2.2 前台系统功能模块 此模块实现了未注册用户功能区和注册用户功能区两大功能区的所有功能。此模块 由用户浏览模块、用户搜索模块、论坛访问量模块、用户注册模块、用户登录模块、个 人资料模块、帖子管理模块、回帖管理模块和退出系统模块组成,即构成了前台系统。 3.2.3 后台系统功能模块 此模块实现了管理员功能区的所有功能。此模块由管理员登录模块、版块管理模块、 管理帖子模块、管理回帖模块、退出系统模块组成,即构成了后台系统。 3.3 功能框图 3.3.1 bbs 论坛 bbsbbs 论坛论坛 前前 台台 后后 台台 图 3.1 总体框图 计算机科学与技术系毕业设计(论文) 3.3.2 前台框图 前 台 用 户 浏 览 模 块 用 户 搜 索 模 块 论 坛 访 问 量 模 块 用 户 注 册 模 块 用 户 登 录 模 块 个 人 资 料 模 块 帖 子 管 理 模 块 回 帖 管 理 模 块 退 出 系 统 模 块 图 3.2 前台所包含的模块 3.3.3 后台框图 后 台 管 理 帖 子 模 块 管 理 回 帖 模 块 退 出 系 统 模 块 管 理 员 登 录 模 块 版 块 管 理 模 块 图 3.3 后台所包含的模块 计算机科学与技术系毕业设计(论文) 3.3.4 各模块设计说明 论坛访问量模块 论 坛 访 问 量 统 计 显 示 访 问 量 用户浏览模块 浏 览 论 坛 板 块 信 息 浏 览 版 块 帖 子 老 板 浏 览 帖 子 与 回 复 内 容 用户搜索模块 帖 子 信 息 搜 索 图 3.4 前台模块的功能(1) 用户注册模块用户登录模块个人资料模块 用 户 注 册 检 查 并 保 存 用 户 注 册 信 息 用 户 登 录 检 查 用 户 登 录 信 息 查 看 个 人 资 料 修 改 个 人 注 册 信 息 查 看 用 户 的 发 帖 信 息 查 看 用 户 的 回 帖 信 息 图 3.5 前台模块的功能(2) 计算机科学与技术系毕业设计(论文) 帖子管理模块 用 户 撰 写 新 的 帖 子 用 户 编 辑 已 发 的 帖 子 用 户 删 除 已 发 的 帖 子 回帖管理模块 用 户 回 复 帖 子 用 户 编 辑 已 发 的 回 帖 用 户 删 除 已 发 的 回 帖 退出系统模块 用 户 退 出 登 录 状 态 图 3.6 后台模块的功能 4 数据库设计 数据库技术是在文件系统的基础上发展起来的一种高效的数据管理技术,它能保持 系统数据的整体性,完整性和共享性。数据库是有组织的存储在一定结构内的相关数据 的集合。在数据库系统中提供了对数据的访问机制,能有组织的存储相关的数据,具有 合理的存储方式,快速的查询效率和最小的数据冗余等特性。另外数据的存储和应用程 序彼此独立,不仅便于数据的管理与控制而且有利于应用程序的编写与调试。数据库类 似于一个数据的大仓库,能很好地实现数据共享,本身就具有数据的增,删,改等功能, 能维护数据的一致性。数据库设计是系统设计的一个重要内容,其设计质量的好坏直接 影响系统开发的成败,系统的质量,系统效率及可维护性。 在本系统的设计中,充分考虑到了本系统数据繁杂,重复性很大,数据使用频繁。 因此本系统采用了一种能正确反映用户实现环境,能被现行系统接受,易于维护、效率 高的数据管理方法-数据库系统。 数据模型是指数据库中记录与记录之间联系的数据结构形成的。不同的数据管理系 统有不同的数据模型,数据库设计的核心问题是设计好的数据模型。在目前的数据库管 理系统中有层次模型,网状模型、关系模型三种数据模型。其中,关系模型具有较高的 数据独立性,使用也较为方便。本设计采用关系数据库。该数据库实行增、删、编辑、 计算机科学与技术系毕业设计(论文) 统计。其中的排序和索引功能,对数据快速定位,查询提供了有利条件。 4.1 设计思想 本系统采用的sql server 2000 作为后台数据库,通过前面的分析,要在数据库中存 储以下基本信息。 用户信息:用户id号、用户姓名、用户密码、用户性别、用户签名、用户类别、 用户e-mail地址、用户 qq、用户注册时间、用户最后一次登录时间、用户访问系统次数、 用户发帖数、用户回帖数、用户个人头像。 版块信息:版块编号、版块名称、版块描述。 帖子信息:帖子编号、帖子所属版块编号、帖子标题、帖子内容、帖子图片相对路 径、发帖时间、发帖者、单击率、回帖数、最后一次回帖时间、最后一次回帖者。 回帖信息:回帖编号、回复帖子的编号、回复内容、回复图片相对路径、回复时间、 回复者。 通过以上的分析,该系统需要创建四个数据表,分别为用户信息表useriinfo、版块 信息表boarinfo、帖子信息表postinfo、回帖信息表replyinfo,并且它们的关系为:帖子信 息表postinfo与版块信息表boarinfo通过版块编号建立连接关系,帖子信息表postinfo与回 帖信息表replyinfo通过帖子编号建立连接关系,帖子信息表postinfo与用户信息表 useriinfo通过用户名建立连接关系,回帖信息表replyinfo与用户信息表useriinfo通过用户 名建立连接关系。 4.2 创建数据表 本系统使用sql server 2000 作为数据库管理系统。安装数据库,打开企业管理器, 新建一个数据库bbs,并创建四个表,其功能如下: 表 4.1 数据库包含的数据表及其功能 数据表功能 useriinfo存放用户基本信息 boarinfo存放版块基本信息 postinfo存放帖子基本信息 replyinfo存放回帖基本信息 用户信息表useriinfo 该信息表用于存储用户的基本信息,包括用户 id 号(id) 、用户姓名(name)、用户 密码(pwd)、用户性别(gender)、用户签名(sign)、用户类别(flag)、用户e-mail地址(email)、 用户qq(qq)、用户注册时间(reg_time)、用户最后一次登录时间(login_timg)、用户访 计算机科学与技术系毕业设计(论文) 问系统次数(visitcount)、用户发帖数(postcount)、用户回帖数(relycount)、用户个人头像 (logo)。 表 4.2 用户信息表(useriinfo) 字段名数据类型长度说明备注 idint 4 用户 id 号设为主键且自动编号 namevarchar 20 用户姓名不允许为空 pwdvarchar 20 用户密码不允许为空 genderint 4 用户性别不允许为空 signvarchar 200 用户签名允许为空 flagint 4 用户类别允许为空 emailvarchar 50 用户 e-mail 地址允许为空 qqvarchar 50 用户 qq允许为空 reg_timedatatime 8 用户注册时间不允许为空 login_timgdatatime 8 用户最后一次登录时间允许为空 visitcountint 4 用户访问系统次数允许为空 postcountint 4 用户发帖数允许为空 relycountint 4 用户回帖数允许为空 logovarchar 50 用户个人头像不允许为空 版块信息表boardinfo 该信息表用于存储版块的基本信息,包括版块编号(board) 、版块名称(boardname)、 版块描述(boarddescription)。 表 4.3 版块信息表(boardinfo) 字段名数据类型长度说明备注 boardidin 4 版块编号设为主键且自动编号 boardnamevarchar 50 版块名称不允许为空 boarddescriptionvarchar 200 版块描述不允许为空 帖子信息表 postinfo 该信息表用于存储发帖的基本信息,包括帖子编号(postid) 、帖子所属版块编号 (boarsded) 、帖子标题(posttitle) 、帖子内容(postcontent) 、帖子图片相对路径 (postimage) 、发帖时间(posttime) 、发帖者(postname) 、单击率(postclick) 、回 帖数(replycount) 、最后一次回帖时间(replytime) 、最后一次回帖者(replyname) 。 表 4.4 帖子信息表(postinfo) 字段名数据类型长度说明备注 postidint 4 帖子编号设为主键且自动编号 boarsdedint 4 帖子所属版块编号不允许为空 计算机科学与技术系毕业设计(论文) posttitlevarchar 50 帖子标题不允许为空 postcontentvarchar 2000 帖子内容不允许为空 postimagevarchar 50 帖子图片相对路径允许为空 posttimedatetime 8 发帖时间不允许为空 postnamevarchar 20 发帖者不允许为空 postclickint 4 单击率允许为空 replycountint 4 回帖数允许为空 replytimedatetime 8 最后一次回帖时间允许为空 replynamevarchar 20 最后一次回帖者允许为空 回帖信息表 replyinfo 该信息表用于存储回帖的基本信息,包括回帖编号(replyid) 、回复帖子的编号 (replyid) 、回复内容(replycontent) 、回复图片相对路径(replyimages) 、回复时间 (replytime) 、回复者(replyname) 。 表 4.5 回帖信息表(replyinfo) 字段名数据类型长度说明备注 replyidint 4 回帖编号设为主键且自动编号 replyidint 4 回复帖子的编号不允许为空 replycontentvarchar 2000 回复内容不允许为空 replyimagesvarchar 50 回复图片相对路径允许为空 replytimedatetime 8 回复时间不允许为空 replynamevarchar 20 回复者不允许为空 计算机科学与技术系毕业设计(论文) 4.3 数据库设计说明 4.3.1 实体 用 户 信 息 id 号 密码 类别 个人头像 e-mail qq 回帖数 签名 最后一次登 录时间 访问系统次 数 性别 注册时间 发帖数 姓名 版块信息 编号 名称 描述 回帖信息 回复帖子 的编号回 复 时 间 回复者 图片相 对路径 内容 编号 计算机科学与技术系毕业设计(论文) 帖子信息 发帖时 间 回帖数 编号 所属版块 编号 标题 内容 图片相对 路径 发帖者 点击率 最后一次回 帖时间 最后一次 回帖者 图 4.1 各个实体的属性 4.3.2 关系 n 属于 帖子信息 版块信息 1 回复 帖子信息 回帖信息 n 1 管理 用户信息 帖子信息 n 1 管理 用户信息 回帖信息 n 1 管理 用户信息 版块信息 n 1 图 4.2 实体之间的关系 计算机科学与技术系毕业设计(论文) 5 详细设计 5.1 公用模块的设计 一、数据库的连接文件 本系统中几乎所有页面都要进行数据库的连接,所有本人把数据库连接代码保存在 页面conn.asp中,避免重复编程,浪费资源。 conn.asp的代码如下: 以后在文件中引用此文件时,把该文件作为头文件直接调用即可,代码如下: 二、叠层样式文件 为了使bbs论坛系统的界面美观、风格统一、修改起来方便,所以创建一个叠层 样式文件css.css,对本系统所有的网页文件中所标记的属性实行统一控制。 css.css的代码如下所示: 在编写页面代码时,在每个页面的和标记之间包含该样式表文件, 就可以起到统一页面风格的作用,具体代码如下: 三、常量文件 常量文件adovbs.inc是iis/pws所提供的文件,存放着ado相关常数的定义,使用 inc文件可以使我们的程序增加可读性,更易于系统的开发与维护。adovbs.inc是将常用参 数定义为常量放在包含文件中,使用该参数时,调用这个常量即可,这样就可以在改变 这个参数时,不需要改变程序,只要修改包含文件中常量的值。 调用adovbs.inc 文件的代码如下: 四、数据转换和上传图片文件 此文件用于数据转换和上传图片,本系统中需要一些转换函数进行数据转换,以及 获取服务器端相对图片路径,上传图片等。由于这些函数在后面的几个页面中经常被用 到,所以将它们单独提取出来,保存在function.asp 中。 调用该文件的代码为: 5.2 前台模块的设计 5.2.1 用户浏览与搜索模块 一、用户浏览模块 此模块包括系统首页default.asp、版块帖子列表浏览list.asp和帖子与回复内容浏览 view.asp三个部分,本系统中所有的帖子信息和回帖信息以及版块信息全在此模块中显示, 它负责版块信息的显示,版块帖子信息的显示,帖子与回复内容的显示。 default.asp文件时论坛的首页,用于显示该系统中所有版块信息,该页面设置每页 计算机科学与技术系毕业设计(论文) 显示 10 条版块信息,当多于 10 条时页面实现自动分页。该页面为版块名称和版块描述 设置了超链接,单击版块名称或版块描述连接,就可以进入版块帖子列表页,查看相应 版块的帖子信息。 不同用户登录本系统所拥有的权限的显示和具体实现,代码如下: “ then % 注册用户登录 用户资料用户修改信息 用户发帖信息用户回帖信息 退出 4 then % 管理员登录 管理 当前位置:论坛首页 计算机科学与技术系毕业设计(论文) “ then % 撰写话题 图 5.1 论坛首页 此系统的设计是把所有的帖子信息、回帖信息、版块信息、以及用户信息、全部保存 在数据库中,该页面要显示版块名称和版块描述信息,就必须和数据库相连,所以此页面要 引用数据库连接页。为了使该系统界面美观、风格统一,所以要统一页面风格,就需要有导 航栏。导航栏的设计和显示分页页码设置相应的连接,当未登录或未注册用户访问该页面时, 导航栏显示首页、登录、注册和访问量等信息,当普通用户访问该页面时,导航栏显示首页、 登录、注册和访问量、用户资料、用户修改信息、用户发帖信息、用户回帖信息和退出等信 息,当管理员访问该页面时,导航栏多显示一个管理的功能。页面实现分页的重要步骤就是 计算机科学与技术系毕业设计(论文) 传递参数,显示从版块信息表boardinfo中所有版块的信息,所以要实现分页所传递的参数为 页码page。 list.asp是版块帖子列表浏览页,用于显示属于本版块帖子的所有信息,该页面将数据库 中的相应的版块帖子信息以列表的形式显示出来,这样可以在页面中显示更多的帖子信息。 该页面为帖子主题设置了连接,单击帖子主题连接,既可以进入相应帖子详细信息页面,查 看帖子详细信息及回帖信息。 view.asp是帖子与回复内容浏览页,用于显示页面帖子信息和该帖所有回复信息,任何 用户均可进入该页面,只要点击版块帖子列表浏览页list.asp中的帖子主题链接,即可进入该 页面进行查看。该页面设置了当用户登录时,会显示“撰写话题”和“回复帖子”链接,用 户只要点击就可做相应的操作,同时也为管理员增加了“删除”和“修改”链接,管理员点 击即可操作。 二、用户搜索模块 此模块包括帖子信息搜索,所有用户均可在论坛内搜符合指定条件的帖子,search.asp是 用户搜索页,用于用户搜索,为用户设置了帖子搜索功能,可以按不同条件进行搜索,并对 搜索结果进行了分页设置,也是每页显示 10 条信息。同时,该页面为管理员增加了“修改” 和“删除”功能,管理员点击相应链接,即可进行操作。 查询代码如下: alert(查询错误!);“ response.end end if else sql = “select * from postinfo order by posttime desc“ end if rs.open sql,conn,3,3 if isnumeric(request(“page“)=false or request(“page“)=“ then page=1 else page=cint(request(“page“) end if rs.pagesize=10 if rs.eof and rs.bof then response.write “没有 搜索到相关的帖子! “ response.end else mypagesize=rs.pagesize rs.absolutepage=page do while not rs.eof and mypagesize0 % 计算机科学与技术系毕业设计(论文) 图 5.2 用户搜索页显示效果图 5.2.2 用户访问量与注册模块 一、论坛访问量模块 此模块包括论坛访问量统计页面functioncount.asp和访问量显示页面visitcount.asp,此模块 对所有用户开放,所有用户进入该论坛都可以查看目前论坛访问量的情况。 图 5.3 访问量显示页显示效果图 计算机科学与技术系毕业设计(论文) 二、用户注册模块 此模块包括用户注册和检查并保存用户注册信息等功能,本模块用于新用户注册,注 册成功之后进入登录界面。regist.asp是用户注册页,新用户必须先注册,并且成功之才可拥 有自己得账户和密码,登录成功之后才可以进入该论坛进行普通用户的权限操作。 usersave.asp是检查并保存用户注册信息页,用于检查并保存用户注册页regist.asp传来的用户 信息,注册成功就返回用户登录页,注册失败就给出相应提示信息。 图 5.4 用户注册页显示效果图 5.2.3 用户登录与个人资料模块 一、用户登录模块 此模块包括用户登录页和检查用户登录信息页,login.asp是用户登录页,此页面对已注 册用户和管理员开放,用户只要单击导航栏上的“登录”链接,就可以进入该页面进行相关 操作。chklogin.asp是检查用户登录页,用于检查用户登录信息,并校验用户输入的账号和密 码是否正确,登录成功之后就返回论坛首页,登录失败则给出相

温馨提示

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

评论

0/150

提交评论