1、 本文由 qingjia20771 贡献doc 文档可能在 WAP 端浏览体验不佳。建议您优先选择 TXT,或下载源文件到本机查看。目录 系统概述 1第一章1.1 项目背景 1 1.2 系统开发的意义 2 1.2.1 发布想法 2 1.2.2 博客的用途 2 1.3 系统开发的目标 2 1.3.1 任何拥有博客的人都可以做到 2 1.3.2 访问博客系统的人,可以做到 3 1.4 系统概述 3 1.5 系统的开发方法 3 第二章 系统分析 5 2.1 可行性分析 5 2.2 需求分析 5 2.2.1 管理员登录 5 2.2.2 文章管理 6 2.2.3 系统信息管理 6 2.4 数据分析 6
2、2.5 数据流图 6 第三章 数据库设计 7 3.1 数据库技术概述 7 3.2 数据库选择 7 3.3 数据库的概念结构设计 8 3.3.1 实体与属性之间的关系 8 3.3.2 数据库的 E-R 图 8 3.4 数据库逻辑结构设计 9 3.5 数据库的完整性和安全性 错误!未定义书签. 错误!未定义书签. 3.5.1 数据库的完整性约束 错误! 未定义书签. 错误!未定义书签.3.5.2 数据库的安全性 错误!未定义书签. 错误!未定义书签. 第四章 系统设计 10 4.1 系统总体设计 10 4.2 公用模块的编写 12 4.2.1 数据库连接文件 12 4.2.2 用户登录和注销 12
3、 4.2.3 地址栏和博客主题设置 12 4.3 客户界面的设计与实现 12 4.3.1 界面头设计 12 4.3.2 界面尾设计 13 4.3.3 首页设计与实现 13 4.3.4 用户注册模块设计 13 4.3.5 给我留言模块 14 4.3.6“文章评论“ 功能模块设计 14 4.4 后台管理界面设计 14 4.4.1“添加分类“功能模块 14 4.4.2“分类管理“ 功能模块 14 4.4.3“添加文章“功能模块 14 4.4.4“文章管理“功能模块 15 4.4.5“留言管理“功能模块 15 4.4.6“基本设置“ 功能模块 15 4.4.7 管理员密码模块 15 4.4.8 系统管
4、理模块 15 第五章 系统测试 16 5.1 测试目的 16 5.2 测试方法 16 5.3 测试实例 16 5.3.1 后台管理权限测试 16 5.3.2 前台文章显示测试 16 5.3.3 前台显示文章详细内容测试 17 5.3.4 管理员登陆 17 5.3.5 后台管理权限测试 17 5.3.6 文章管理 17 5.3.7 系统信息管理 18 结 论 错误!未定义书签. 谢 辞 错误!未定义书签. 参考文献 错误!未定义书签. 附 录 19 附录一 软件使用说明书 19 附录二 源代码 错误!未定义书签. 错误!未定义书签.第一章1.1 项目背景系统概述Blog,是 Weblog 的简称
5、.Weblog, 其实是 Web 和 Log 的组合词.Web, 指 World Wide Web,当然是指互连网了;Log 的原义则是“航海日志“, 后指任何类型的流水记录.合 在一起来理解,Weblog 就是在网络上的一种流水记录形式或者简称“ 网络日志“. Blogger 或 Weblogger,是指习惯于日常记录并使用 Weblog 工具的人 .虽然在大陆早些 时候或者台湾等地, 对此概念的译名不尽相同 (有的称为“网志“, 有的称之为 “网录“ 等等) ,但目前已基本统一到“博客“一词上来.该词最早是在 2002 年 8 月 8 日由著名 的网络评论家王俊秀和方兴东共同撰文提出来的.
6、博客也好,网志也罢,仅仅是一种名 称而已,它的本义还是逃不过 Weblog 的范围.只是,通常我们所说的“博客“, 既可 用作名词 Blogger 或 weblogger指具有博客行为的一类人;也可以作动词用 (相当 于英文中的 Weblog 或 blog) 指博客采取的具有博客行为反映, , 是第三方可以用视觉感 受到的行为,即博客们所撰写的 Blog.因此,“他/她是一位博客,他/她天天在博客“ 及“博客博什么客?“在中文语法与逻辑上都是正确.只是不同场合的用法不同罢了. Blog 究竟是什么? 说了半天,其实一个 Blog 就是一个网页,它通常是由简短且经 常更新的帖子(Post)所构成
7、,这些张贴的文章都按照年份和日期倒序排列.Blog 的内 容和目的有很大的不同, Blog 的内容和目的有很大的不同, 从对其他网站的超级链接和 评论 ,有关公司 ,个人,构想的新闻到日记,照片,诗歌,散文,甚至科幻小说的发表 或张贴都有.许多 Blogs 记录着 blog 个人所见,所闻,所想,还有一些 Blogs 则是一 群人基于某个特定主题或共同利益领域的集体创作. 撰写这些 Weblog 或 Blog 的人就叫 做 Blogger 或 Blog writer. 博客存在的方式,一般分为三种类型:一是托管博客,无须自己注册域名,租用空 间和编制网页,博客们只要去免费注册申请即可拥有自己的
8、博客空间,是最“多快好 省 “ 的 方 式 . 如 英 文 的 , 及 多 种 语 言 的 博 客 室 ()等都提供这样的服务;二是自建独立网站的博客,有自己的域名,空间 和页面风格, 需要一定的条件 . 如方兴东建立的 “博客中国“站 () ; 三是附属博客,将自己的博客作为某一个网站的一部分(如一个栏目,一个频道或者一 个地址) .这三类之间可以演变,甚至可以兼得,一人拥有多种博客网站. 目前进行网站开发的语言很多,如 ASP,PHP,JSP,ASP.NET 等.究竟应该选择什么 语言来开发一个 BLOG 网站呢,对于一个中小型的网站来说,ASP 无疑是最好的选择,利 用简单的 HTM
9、L 代码与脚本融合而成的 ASP 技术可以开发强大的 Web 应用程序.ASP (Active Sever Pages)是 Microsoft 推出的一种服务器端脚本环境,ASP 内嵌于 IIS 中,让用户可以轻松的结合 HTML Web 页面,脚本和 ActiveX 组件建立或执行动态的, 交互的 Web 服务器应用程序.ASP 并不单指某一种编程语言,而是一门把 HTML 代码与1VBScript 和 JavaScript 等脚本语言融合在一起的技术,ASP 技术的诞生,应该说是一 项成功的技术,它开创了非专业人员开发高水平网站的历史.1.2 系统开发的意义 1.2.1 发布想法博客能让个
10、人在互联网上表达自己的心声. 这是一个收集和共享任何感兴趣的事物 的地方-可以是政治评论,个人日记或是指向您想记住的网站的链接 .许多人使用博客 只是要组织自己的想法,而有些人则在全球成千上万的浏览者中赢得影响力.职业和业 余新闻记者使用博客发布特发新闻,而有写日记习惯的人则会在博客 中宣示自己内心 的想法.而摄影和美术发烧者,可以通过博客 系统的管理自己的作品,无论您要发表 什么意见,博客都可以帮您表达出来. 博客作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧,意见和思想. 某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价 值,标志着互联网发展开始步入更高
11、的阶段.1.2.2 博客的用途(1)促进学习.写 blog 可以促进学习,想写出文章来,自然不能是泛泛的了解就 可以的,要理解了才能写得出来的.这就促进了对某些领域的不断学习和思考. (2)记录收获.blog 中,常常是记录下来都是瞬间的灵感,对事物的感悟,经过多 日思考和实践的结果,对某个问题的解决方案等等,这些都是财富,要记录下来. (3)反映成长.写 blog,可以反映出人的思考过程,而不仅仅是思考结果.对一个 问题或领域,从不了解到了解,从了解到熟悉,从熟悉到精通.这纪录了一个人思考和 解决问题的成长过程.很久之后,看到自己之前的文章,你将会觉得自己进步了. (4)结交朋友.写了 bl
12、og,自然会有许多志趣相同的朋友来阅读 ,这可以认识许多 朋友.大家有共同的兴趣爱好,自然谈得来. (5)共享知识.blog 给大家看 ,大家的 blog 也给你看.这个问题我解决了,那个 问题他解决了.大家互通有无,建立起一个社群. (6)交流看法.回复的人对 blog 的观点或赞同,或反对,大家一起讨论,听听别 人的思想,可以促进双方的共同进步. (7)包装自己.看到一篇篇用心写出的文章,自然是对自己知识技能的最好宣传.1.3 系统开发的目标 1.3.1 任何拥有博客的人都可以做到(1)登录博客系统浏览文章 (2)管理自己博客的基本信息 (3)撰写个人随笔 (4)处理留言,文章评论等内容2
13、1.3.2 访问博客系统的人,可以做到游览博客系统中的随笔目录,文章目录博客系统中的内容,只有博客管理员登录系 统之后,才能进行管理.而博客系统的访问者不需要注册,也不需要登录就可以访问博 客系统中的内容.1.4 系统概述一个博客其实就是由一序列网页组成的, 它通常是由简短且经常更新的帖子所构成 的,这些张贴的文章都按照年份和日期倒序列排列,能按照日期和主题检索.博客的内 容和目的有很大的不同,有到其他网站的超级链接;有对其他网站的评论; 有个人的日 记,日常所思所想;有个人照片,诗歌,散文,甚至科幻小说的发表 .正是由于博客能 收容这些不拘于个人思想的表达,使博客这种交流和表达方式日益红火起
14、来,博客秉承 了个人网站的自由精神,也开拓了激发创造的新模式,能张扬人的个性,从这个意义上 说,博客将会变得越来越普及,越来越为更多的人接受. 本系统主要完成以下功能. 1.客户界面部分 我的文章 给我留言 用户注册/登录 首页:文章分类,最新评论,最新文章,最新加入 2.管理界面部分 添加分类 分类管理 文章管理 留言管理 基本设置1.5 系统的开发方法本系统主要采用 ASP 技术进行开发,ASP 是服务器端的脚本执行环境,可用来产生 和执行动态的高性能的 WEB 服务器程序. 当用户使用浏览器请求 ASP 主页时,WEB 服 务器响应,调用 ASP 引擎来执行 ASP 文件,并解释其中的脚
15、本语言(JScript 或 VBScript),通过 ODBC 连接数据库,由数据库访问组件 ADO(ActiveX Data Objects)完 成数据库操作,最后 ASP 生成包含有数据查询结果的 HTML 主页返回用户端显示 . 由于 ASP 在服务器端运行,运行结果以 HTML 主页形式返回用户浏览器,因而 ASP 源程序不会泄密,增加了系统的安全保密性.此外,ASP 是面向对象的脚本环境,用户 可自行增加 ActiveX 组件来扩充其功能,拓展应用范围. 本系统的前台开发采用 Dreamweaver,Dreamweaver 是美国 MACROMEDIA 公司开发的 集网页制作和管理网
16、站于一身的所见即所得网页编辑器, 它是第一套针对专业网页设计3师特别发展的视觉化网页开发工具, 利用它可以轻而易举地制作出跨越平台限制和跨越 浏览器限制的充满动感的网页.Dreamweaver 特点: 1.最佳的制作效率 Dreamweaver 可以用最快速的方式将 Fireworks,FreeHand,或 Photoshop 等档案 移至网页上.使用检色吸管工具选择荧幕上的颜色可设定最接近的网页安全色.对于选 单,快捷键与格式控制,都只要一个简单步骤便可完成.Dremweaver 能与您喜爱的设计 工具,如 Playback Flash,Shockwave 和外挂模组等搭配,不需离开 Dre
17、mweaver 便可 完成,整体运用流程自然顺畅.除此之外,只要单击便可使 Dreamweaver 自动开启 Firework 或 Photoshop 来进行编辑与设定图档的最佳化. 2.网站管理 使用网站地图可以快速制作网站雏形,设计,更新和重组网页.改变网页位置或档 案名称 ,Dreamweaver 会自动更新所有连结 .使用支援文字 ,HTML 码,HTML 属性标签 和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单. 3.无可比拟的控制能力 Dreamweaver 是唯一提供 Roundtrip HTML, 视觉化编辑与原始码编辑同步的设计工 具.它包含 HomeSite 和
18、 BBEdit 等主流文字编辑器.帧(frames)和表格的制作速度快的 令您无法想像.进阶表格编辑功能使您简单的选择单格,行,栏或作未连续之选取.甚 至可以排序或格式化表格群组,Dreamweaver 支援精准定位 ,利用可轻易转换成表格的 图层以拖拉置放的方式进行版面配置. 所见即所得 Dreamweaver 成功整合动态式出版视 觉编辑及电子商务功能, 提供超强的支援能力给 Third-party 厂商, 包含 ASP, Apache, BroadVision, Cold Fusion,iCAT, Tango 与自行发展的应用软体.当您正使用 Dreamweaver 在设计动态网页时,所
19、见即所得的功能,让您不需要透过浏览器就能预览 网页.梦幻样版和 XML Dreamweaver 将内容与设计分开,应用于快速网页更新和团队合 作网页编辑.建立网页外观的样版,指定可编辑或不可编辑的部份,内容提供者可直接 编辑以样式为主的内容却不会不小心改变既定之样式. 您也可以使用样版正确地输入或 输出 XML 内容. 全方位的呈现利用 Dreamweaver 设计的网页,可以全方位的呈现在任 何平台的热门浏览器上.对于 cascading style sheets 的动态 HTML 支援和鼠标换图效 果,声音和动画的 DHTML 效果资料库可在 Netscape 和 Microsoft 浏览
20、器上执行.使用 不同浏览器检示功能,Dreamweaver 可以告知您在不同浏览器上执行的成效如何.当有 新的浏览器上市时,只要从 Dreamweaver 的网站在下载它的描述档,便可得知详尽的成 效报告.本系统的后台数据库采用 Access 2000, Access 2000 一个最突出的功能就是将 Access 数据库中的数据动态地提供给 Web 页. Access2000 另一个突出的优点就是使用 起来特别简单,就和你使用“窗体“ 一样,非常的简单.而且这种联接是动态的,不需 要创建很多的页面,一切繁琐的工作 Access 都自己包了.掌握这个对象的用法,以后 往 Internet 发布
21、数据就更加得心应手了 .4第二章2.1 可行性分析系统分析可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上, 针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术,经济,社会的方 面进行分析和研究,以避免投资失误,保证新系统的开发成功.可行性研究的目的就是 用最小的代价在尽可能短的时间内确定问题是否能够解决.为了确定开发具有可行性, 对本系统主要进行了以下四个方面的分析. (1) 经济可行性 .经济可行性主要是对项目的经济效益进行评价.本系统对系统开 发者来说并不需要太高的成本支出,只是对系统的管理者付出管理报酬即可,而且开发 周期不需要太长
22、,节省了人力,物力,财力资源,所以本系统在经济上是可行的. (2) 技术上的可行性. 技术上的可行性分析主要是分析技术条件能否顺利完成开发 工作,硬,软件能否满足开发者的需要等.在软件方面,本系统采用的是 ASP(Active Sever Pages)进行开发,前台网页设计使用的是 Dreamweaver MX,而数据库系统采用 的是 Microsoft Access 2000.通过分析,在软,硬件方面现有工具与环境完全可以实 现系统的开发,因此具有技术上的可行性. (3) 时机可行性.时机可行性是分析系统开发时机是否成熟.目前越来越多的应用 程序都已经是转向基于 Web 的开发,并且 Int
23、ernet 已经广泛使用,因此系统的设计具 有时机可行性. (4) 管理上的可行性: 主要是管理人员是否支持 , 现有的管理制度和方法是否科学, 规章制度是否齐全,原始数据是否正确等.系统的开发主要就是为了方便校友信息的管 理,补充现在传统管理方式的不足,因此具备了管理上的可行性. 综上所述,本系统开发目标已明确,在技术和经济等方面具备可行性,并且投入 少,见效快,因此系统的开发是完全可行的.2.2 需求分析在可行性分析阶段已经简要地分析和研究了本系统的基本需求, 也论证了开发平台 及软件的可行性,但为了明确系统设计的目标,了解用户的需求,现对用户需求作以调 研,从而进一步明确了设计所实现子系
24、统的功能.2.2.1 管理员登录在调研中了解到,用户想要使用系统,首先要有一个友好的用户注册界面,其次, 用户需要经历登录验证过程, 只有合法的拥有管理员身份的用户才可以使用系统中的管 理功能,这样做可以防止非法用户登录并使用本系统,妨害数据安全. 用户登录.通过系统登录验证,用户成功进入系统并开始使用其中功能.52.2.2 文章管理文章管理是用户所有文章的信息,用户可以进入此处进行相关文章的管理.这部分 主要包括以下方面: (1) 文章信息显示 .显示出所有文章的大概信息 . (2) 发表新文章.可以发表新的文章,以供网友浏览. (3) 修改文章.可以修改已有的文章的内容. (4) 删除文章
25、.允许用户对文章信息进行删除操作.2.2.3 系统信息管理系统开始运行之后,随着时间的变化会有想要更改系统的相关信息的要求,比如: 修改博客的标题,联系的 Email 地址,因此需要提供信息修改的功能.同时,为了保证 数据使用系统的安全性,管理员也应该经常修改登录密码信息.2.4 数据分析博客系统中,主要是管理用户的文章,留言,系统信息等数据.数据的类型决定了程 序对数据的处理方式也就是算法,因此,数据是系统实现分析的起点.现通过数据流图的 方式分析系统中数据的流动和处理. 对系统的管理员,在登录系统后,本系统接受管理员的修改,添加,删除请求,通过 分析将这种请求转化成相应的 SQL 语句执行
26、对数据库的相关的操作,并将执行的相应结果 送回系统中.系统接收到数据库返回的结果集,经过一定的分析处理,将其转化成 ASP 页 面,返回到客户端显示给用户.2.5 数据流图系统运行过程中,主要涉及到两部分的数据流向,一部分是管理员在系统后台管理界 面上发出的对数据库操作的数据流,另一部分是用户在应用前台使用系统时所产生的数据 流.6管理员用户登录信息 修改操作 增加操作 相应结果返回Blog 系统服务器提 供 数 据浏 览 请 求浏览者图 2-2博客系统总体图第三章 数据库设计3.1 数据库技术概述数据库(Database),是按照数据结构来组织 ,存储和管理数据的仓库,是用于查询 的大量数据
27、的存储区域.使用数据库可以带来许多好处:如减少了数据的冗余度,从而 大大地节省了数据的存储空间,实现数据资源的充分共享等等.近年来推出的计算机关 系数据库管理系统,还具有操作直观,使用灵活,编程方便,功能强大,环境适应广泛, 数据处理能力极强等诸多优点. 总的来说 ,数据库的设计对系统的经济性,功能性和效率有很大的影响,一个好的 数据库,要求在设计时尽量避免数据的多余,另外,还要尽可能提高数据的存取速度. 数据库设计时速度与空间在范式上是相互矛盾的.一方面按规范化理论的要求,关系模 式应尽量取高级范式,尤其对记录数较多的关系,低级范式将会造成存储的大量重复, 是空间遭受严重浪费;另一方面从存取
28、速度上考虑,应该尽量做到一个模式涉及的属性 越多越好,相互运算越少越好,这样,又应取低级范式.因此我们在设计数据库时要严 格地探讨它的使用环境,充分了解用户的需求,清楚地掌握数据库系统的特点.经过综 合的评价和分析后设计出的数据库应满足以下要求: (1) 数据库信息要能充分体现出用户使用系统的需求. (2) 能够支持用户对数据进行的所有处理. (3) 能够容易被数据库管理系统运行维护. (4) 数据一致性,完整性好,无更新异常.3.2 数据库选择本系统所采用的数据库是 Access 20007Access 数据库管理系统是 Microsoft Office 套件的重要组成部分 ,是 Acces
29、s 的 最新版本,可在 Windows 95 环境下运行.Access 适用于小型商务活动,用以存贮和管 理商务活动所需要的数据. Access 不仅是一个数据库, 而且它具有强大的数据管理功能, 它可以方便地利用各种数据源,生成窗体(表单), 查询,报表和应用程序等 . 数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的 ) 是一串文字或数字流.数据库中的数据可以是文字,图象,声音等. Microsoft Access 是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一 行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能
30、重 复.表与表之间可以建立关系(或称关联 ,连接), 以便查询相关联的信息.Access 数据库以文件形式保存 ,文件的扩展名是 MDB. (5)Access 支持 ODBC(开发数据库互连,Open Data Base Connectivity) ,利 用 Access 强大的 DDE(动态数据交换)和 OLE(对象的联接和嵌入)特性,可以在一个 数据表中嵌入位图,声音,Excel 表格,Word 文档,还可以建立动态的数据库报表和窗 体等.Access 还可以将程序应用于网络,并与网络上的动态数据相联接.利用数据库访 问页对象生成 HTML.3.3 数据库的概念结构设计 3.3.1 实体与
31、属性之间的关系E-R 模型的组成元素有:实体,属性,联系.E-R 模型用 E-R 图表示.实体是用户工 作环境中所涉及的事务,属性是对实体特征的描述. (1) 模型中的实体相当于实体集,一个表,而不是单个实体或表中的一行.实体用矩 形框表示,实体名称标注在矩形框内.用菱形表示实体间的联系,菱形框内写上联系名, 用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型. (2) 属性是实体的性质.用椭圆框表示,与实体之间用一条线相连表的主码是关键属 性,关键属性项加下划线. (3) 各子系统模块中主键相同的字段之间存在着相互关联的关系. (4) 在程序中实现对它们的完整性和一致性控制.3.3
32、.2 数据库的 E-R 图(2)博客系统文章实体 E-R 图如图 3.2 所示.8文章编号文章内容发表日期文章标题浏览用户管理管理员 文章标题 文章内容 管理日期3.4 数据库逻辑结构设计字段名称 UserID Username Password Sex Question Answer Date数据类型 自动编号 文本 文本 文本 文本 文本表 3-1 User 用户表 字段大小 是否主键 默认值 50 50 50 50 50 是 否 否 否 否 否 否 是否必填 否 是 是 是 是 是备注 用户编号 用户代号 用户密码 用户性别 验证问题 验证问题答案 注册日期日期/时间 Type 表记录文
33、章分类,其字段如表 3-2 所示表 3-2 Type 文章分类表 字段名称 数据类型 字段大小 是否主键 默认值 TypeID 自动编号 是 Username 50 文本 否 Memo 50 文本 否 Description 50 文本 否 表 3-3 博客主题表,记录博客的主题信息9是否必填 否 是 是备注 分类编号 用户名称 分类描述 分类名称表 3-3 Title 博客主题表 字段名称 数据类型 字段大小 是否主键 默认值 是否必填 GuestID 自动编号 是 Username 50 文本 否 否 Description 文本 50 否 是 LogoSite 50 文本 否 是 表 3
34、-4 为访客留言表,记录访客的留言信息. 表 3-4 Guest 访客留言表 字段名称 数据类型 字段大小 是否主键 默认值 是否必填 GuestID 自动编号 是 Username 50 文本 否 否 50 GuestName 文本 否 是 Content 50 备注 否 是 Date 日期/时间 否 是 表 3-5 文章评论表,记录文章的所有评论. 表 3-5 Comment 文章评论表 字段名称 数据类型 字段大小 是否主键 默认值 是否必填 CommentID 自动编号 是 ContentID 50 文本 否 否 Person 50 文本 否 是 Description 备注 50 否
35、 是 Date 日期/时间 否 是 表 3-6 为文章表,记录用户书写的所有文章. 表 3-6 Article 文章表 字段名称 数据类型 字段大小 是否主键 默认值 ContentID 自动编号 是 Username 50 文本 否 Title 50 文本 否 TypelD 数字 否 Description 文本 50 否 Content 备注 否 Date 日期/时间 否 Click 数字 否 表 3-7 为博客主题表,记录博客的主题和一些个性化设置 表 3-7 字段大小 50 50 Affiche 公告表 是否主键 默认值 是 否 否 备注 主题编号 用户名称 主题名称 Logo 图表地
36、址备注 留言编号 博客所有者代号 留言者姓名 留言内容 留言日期备注 评论编号 文章代号 评论者姓名 评论内容 评论日期是否必填 否 是 是 是 是 是 是备注 文章编号 用户代号 文章标题 文章类别编号 文章描述 文章内容 书写日期 点击数量字段名称 AfficheID Username Content数据类型 自动编号 文本 备注是否必填 否 是备注 公告编号 用户名称 公告内容第四章 系统设计4.1 系统总体设计本系统数据库采用 Access,Web 服务器采用 IIS,系统结构图如图 4-1 所示10我的文章 我的留言 首页 注册/登录 管理 关于 VBScript Access 数据
37、库图 4-1 系统结构图根据系统的功能分析可以画出系统的功能结构图,分别从客户界面,管理界面对功 能模块图加以描述.客户界面的系统功能模块如图 4-2 所示.我的文章 我的留言 首页 注册/登录 管理 关于 图 4-2 客户界面的模块功能图文章分类列表 文章列表 评论管理界面的功能如图 4-3 所示.添加分类 分类管理 管理 添加文章 文章管理 留言管理 基本管理修改 删除 修改 删除 修改 删除11图 4-3 管理界面的功能图4.2 公用模块的编写 4.2.1 数据库连接文件为了操作数据库方便,把连接数据库,查询,更新,插入,关闭连接等数据库操作 都写在一个公用文件 Conn.asp 中,这
38、样其他页面引入这个页面,就可以调用数据库操 作方法,操作数据库了,这样便于提高程序的重用性.4.2.2 用户登录和注销把判定用户登录和注销的程序写在首页 Default.asp 中.当用户在首爷输入用户名 和密码请求登录时,先从数据库查询该用户的用户名和密码是否正确,如果正确则把该 用户的用户名和密码,写入用户 Cookie,这样其他页面如果需要用户登录才能访问, 只需要从 Cookie 取用户的用户名,如果能取得,则说明用户已经登录,否则用户未登 录.当然用 Cookie 记录用户登录是有风险的,最好用 Session 记录.注销只需要设置 记录用户的 Cookie 过期就可以了.4.2.3
39、 地址栏和博客主题设置把博客主题的设置,以及地址栏地址写在一个公用文件 Config.asp 中.如果用户 已经登录则从数据库取出该用户博客主题,并且赋值给一个变量“cfgTitle“ ,这样其 他页面只要包含 Config.asp 页面,就可以获得“cfgTitle“ ,获得博客主题.另外如果 用户已登录,以后还可以让用户直接在 URL 地址后面拼上自己的用户名,直接访问,无 需在本机在登录.4.3 客户界面的设计与实现界面模块化,可以提高代码的重用性,能为编程提供很大便利,节省开发时间,提 高开发效率4.3.1 界面头设计(1)设计思想 为了体现简洁明快的风格,界面头不打算用很复杂的动画图
40、片,顶部直接安排一个 导航栏,让用户可以在首页,我的文章,给我留言,关于,管理,注册等模块之间方便 的切换;为了体现个性化,需要为用户在导航栏下留出一片个性空间,让用户可以为自 己的博客安置博客主题和 LOGO 图标. (2)效果预览 按上面的设计思想,经过一番美工的润饰,设计出的界面头的效果如图 4-4 所示 .12图 4-4 界面头4.3.2 界面尾设计界面尾部,一般声明一些版权信息,是否有 ISP 登记,联系信息等,本博客只需声 明一下版权就可以了.图 4-5 界面尾4.3.3 首页设计与实现首页是一个网站的窗口,长久留住一个用户靠网站强大的功能和丰富的内容,要想 吸引用户, 首页的设计
41、精美和人性化也是重要的因素. 首先是给浏览者留下的第一印象. 所以设计要精美;首页是网站的导航图 ,所以设计要人性化,重点层次突出. 设计思想 首页直接引入前面设计的公用模块的界面头和尾. 首页左边给出浏览者一个清晰的 导航.在左边用户能登录/注册,显示所有文章的分类 ,用户能单击分类查看该分类下 的所有文章;最新 6 条评论,用户能单击进入查看评论内容;最新加入成为用户的 8 位 新成员,用户能直接单击用户名进入该用户的博客. 博客最核心的是文章, 所以正文右边给出一块很大空间用以展示最新书写的 8 篇文 章的标题和内容概要,用户单击文章标题能进入查看该文章的详细内容.图 4-6 为首页 效
42、果图 4-6 首页4.3.4 用户注册模块设计页面 Register.asp 主要完成引导用户进行注册, 首先会提供注册表让用户输入用户 名和密码等,让用户输入注册信息,输入完成后,当用户单击注册 按钮的时候,要对 用户输入的注册信息简单认证,看用户信息是否验证,如果验证进行数据库验证,查看 用户之前是否已经注册过,如果没有注册则插入一条新记录到数据库,完成注册.13图 4-7 用户注册4.3.5 给我留言模块访问者在该功能模块可以给博客所有者留言,这部分的实现很简单,就是提供一个 表单供访问者输入留言标题和留言内容,然后保存到数据库就可以了,这部分的功能在 页面 Guest.asp 中实现.
43、首先编写出用户输入留言标题和内容的表单 .4.3.6“文章评论 “功能模块设计在展现文章页面的末尾,提供接口供浏览者针对该文章发表评论,技术实现非常简 单,就是提供发表评论标题和评论内容的文本框,让读者输入评论标题和内容,当读者 单击提交按钮的时候,把评论标题和内容保存到数据库.4.4 后台管理界面设计 4.4.1“添加分类“ 功能模块方便用户归整自己的文章,后台提供用户设置分类的接口,用户可以添加自己的分 类.用户可以为分类设置名称,并可以设置一个简单的分类描述.另外当用户修改分类 的时候,也调用该页面.只是添加分类的时候,分类名称和分类描述的文本框里面的内 容是空的;而只当修改分类的时候,
44、需要先显示原来的分类名称和描述.需要设置一个 隐藏参数 action,如果 action 的值为 save,那么用户请求的动作就是修改分类,对应 的动作就是添加新分类, 如果 action 的值是 alter, 那么用户请求的动作就是修改分类, 对应的页面就是 Admin_AddType.asp,效果如图 4-10.4.4.2“分类管理 “功能模块在分类管理功能模块,需要列举用户目前拥有的文章分类,用户可以修改和删除分 类,对应的页面是 Admin_TypetList.asp,图 4-11 为该模块的效果图.4.4.3“添加文章 “功能模块通过“添加文章 “功能模块用户能设置文章标题 ,选择文
45、章所属分类 ,填写文章概14要和文章内容,对应的页面是 Admin_AddArticle.asp 图 4-12 为效果图4.4.4“文章管理 “功能模块“文章管理 “功能模块主要显示当前用户所写的所有文章,并能修改或者删除现有 文章,对应的处理页面是 Admin_ArticleList.asp,图 4-13 为效果图图 4-13 文章管理4.4.5“留言管理 “功能模块“留言管理 “功能模块需要分页显示留言的留言者 ,查看留言详细内容 ,删除留言. 图 4-14 为该模块的效果图4.4.6“基本设置 “功能模块用户可能需要为自己的博客设置非常有个性的标题, LOGO 图标或者发表一个有个性 的
46、公告显示在首页等,为此需要为用户提供一个界面方便用户进行这些个性化设置.图 4-15 为该模块的效果图.4.4.7 管理员密码模块通过管理员密码模块,使用户可以随时管理员的密码信息.这样做,也可以提高系 统的安全性.在修改密码的时候,会先让管理员输入原密码,以防止非法用户操作管理 员的密码信息,输入的新密码,要输入两次,以确保输入的是一致,这样可以防止,由 于输入的时候输入失误,造成以后无法登陆的问题.4.4.8 系统管理模块系统管理模块主要是为管理系统的相关信息开发的模块. 主要包括以下几个方面的 数据管理: (1) 标题管理.管理员可以通过这里,修改博客的主题 ,由于时间的推移,可能用 户
47、会随时变更博客的主题,比如一个用户可能现在做一些心情故事,但以后又想做以技 术为主的内容,那么这时,他就会修改博客的主题,以适应文章内容. (2) Email 管理.通过此功能,用户可以修改自己的 Email 地址,这样可以方便的15使其他网名用 Email 的方式联系到你,同样 Email 地址也可能会因为某些原因要变更, 为了网名们还可以通过这种方式联系到你,所以提供此功能,以让网名还可以通过这种 方式联系到你. (3) 每一页显示信息管理 .在显示文章信息时,友情链接信息时 ,前台显示文章的 时候,都会由于数量过多,而不能一次性的显示出来,为了减轻服务器的负担,浏览者 的资源,以及基于提
48、高浏览速度的考虑,会应用分页的技术,让每一页里显示固定数量 的内容,而这个设置就是为了这个功能而设置,管理员可以通过对用户的调查,或者自 己认为的习惯,以及考虑到不同浏览者的情况来设置此数值.系统测试 第五章 系统测试5.1 测试目的程序测试就是在程序投入运行前,对程序的需求分析,设计规格说明和编码的最终 复审,是保证程序质量的关键步骤.如果要给程序测试下定义,可以这样讲,程序测试 是为了发现错误而执行程序的过程. 测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误.在开 发大型软件系统的过程中,需要面对错综复杂的问题,因此,在软件生存周期的每个阶 段都不可避免地会产生错误.编程人员力求在每个阶段结束之前通过严格的技术审查, 尽可能早的发现并纠正错误.5.2 测试方法程序测试的主要方法分为两大类,白盒测试和黑盒测试. 白盒测试:也称结构测试,将软件看成一个透明的白盒子,按照程序的内部结构和 处理逻辑来选定测试用例, 对软件的逻辑路径及过程进行测试, 检查它与设计是否相符 . 黑盒测试: 也称