




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
xx学院信息技术学院毕业论文专业:计算机应用技术 班级: 编号:xx学院信息技术分院毕业论文基于php的个人博客的设计与实现 学 院:信息技术学院专 业:计算机应用技术姓 名:xx班 级:高职应用班指导教师:xx 二一五 年 4 月 15 日摘 要本系统利用php动态网络开发技术以mysql作为后台数据库使用apache配置web服务器结合javascript和htm两种脚本语言,以及配合多种网页开发工具实现了基于b/s模式的个人日志.文章发表和交流的平台个人博客系统。 全文主要分为6个部分第1部分主要介绍个人博客系统的特点、优点和本系统所要用到的各种开发技术第2部分主要论述了传统系统和所要开发系统的处理流程、功能介绍和比较第3部分主要分析了系统的各项功能和性能需求给出了系统需求管理规划表展示了各种需求的优先级规划和分配了各个模块所要完成的系统功能第4部分系统数据库设计主要分析和设计了系统的数据库表和项以及数据库各项的标识符第5部分系统详细设计逐一给出了系统各个模块的详细设计过程第6部分系统配置和发布介绍了系统开发和运行的相关环境配置以及运行效果展示。关键词:博客 php mysql 动态网页 b/s模式目 录1 绪论 .1 1.1 个人博客 .1 1.1.1 个人博客的研究意义 .1 1.1.2个人博客的简介 .1 1.1.3个人博客的特点 .2 1.2 开发技术 .2 1.2.1 php技术 .2 1.2.2 php工作原理 .3 1.2.3 b/s结构 .4 1.2.4 数据库技术 .5 1.2.5 apache技术 .5 1.2.6 javascript语言 .6 2 系统可行性分析设计 .7 2.1 开发的目的和背景 .7 2.2 系统目标和研究方法 .7 2.3 传统系统的分析 .8 2.4 所要开发的系统的分析 .9 2.5 系统的其它可行性 .10 2.6 可行性结论 .11 3 系统需求分析和概要设计 .11 3.1 系统需求分析 .12 3.1.1 开发背景 .13 3.1.2 系统实现目标概述 .14 3.1.3 系统功能需求 .15 3.2 概要设计 .16 3.2.1 系统体系结构 .16 3.2.2 系统模块划分 .16 3.2.3 系统功能划分组织结构图 .17 3.2.3 运行环境 .17 4 系统数据库设计 .18 4.1 mysql 数据库简介 .18 4.2 数据库表的设计 .19 4.2.1 概述 .19 4.2.2 用户表 .19 4.2.3文章内容表 .20 4.2.4 文章评论表 .21 5 系统的详细设计 .22 5.1 首页面及主要页面设计 .23 5.2 系统主要功能模块开发 .24 5.1.1首页模块 .24 5.1.2 文章管理模块 .25 5.1.3 图片管理模块 .26 5.1.4管理员管理模块 .26 6系统配置和发布 .27 6.1 开发和应用环境配置 .28 6.1.1安装apache2.2.6 .29 6.1.2 安装php5.2.5 .30 6.1.3安装mysql6.0.3 .31 6.1.4安装phpmyadmin2.11.3 .31 6.2 系统的发布和运行效果 .31 6.2.1 系统的发布 .32 6.2.2 系统运行效果 .32 7 总结 .33 参 考 文 献 .341 绪论博客数字生活新时尚通过文字、图片、声音等尽情展示自我、分享感受、参与交流美好你我生活。show you, share me,人人都可以博客人人都需要博客。1.1 个人博客1.1.1 个人博客的研究意义越来越多的网络用户希望能够在网络平台上更多地展现自己的个性更方便地与人互动交流在传统的web1.0时代无论是论坛、社区还是个人网站都试图在这些方面进行努力随web2.0时代的到来一个新的概念出现了-博客。随着计算机网络的飞速发展博客已经成为写网络日志必不可少的一种工具也是一种简单有效的提供网络用户之间进行在线交流的网平台通过其可以结交更多的朋友表达更多的想法它随时可以发布日志方便快捷。访客可以直接在个人blog上留言如提出问题或意见等。个人博客的发展也已经成为广告商业务拓展的重要领域。总之blog是继email,bbs、icq之后的第四种网络交互方式。blog是未来信息化教育和个人知识管理的强大而简单易用的工具。1.1.2个人博客的简介 “博客”一词是从英文单词blog翻译而来。blog是weblog的简称而weblog则是由web和log两个英文单词组合而成。weblog就是在网络上发布和阅读的流水记录通常称为“网络日志”简称为“网志”。它是继email、bbs、im之后出现的第四种全新的网络交流方式。它绝不仅仅是一种单向的发布系统而且有着极其出色的交流功能。另外blog也提供了非常方便实用的个性化功能。简言之blog就是以网络作为载体简易迅速便捷地发布自己的心得及时有效轻松地与他人进行交流再集丰富多彩的个性化展示于一体的综合性平台。1.1.3个人博客的特点 1零机制博客属于个人所有是自发建立和非正式的建设。bspblog service provider博客服务托管商不能对博客发号施令。 2零技术博客不需要作网站的专业知识可以像发邮件一样简单地实现博客网页的呈现。技术的极度简化包括架构和申请博客网站、编辑、上传和修改内容等。 3零成本任何一个人都可以像申请免费邮件般免费申请自己的博客网站。不需要注册域名的成本不需要租用服务器空间的成本不需要许多软件工具的成本。 4零编辑博客用户就是编辑即时写作、即时发布、自我检查。这形成了与传统写作截然不同的“体验”真正实现了作者“零磨损”的开放式5零形式博客页面的表现形式和文章内容的表现方式十分灵活没有特定形式。 6与个人主页相比较博客的使用更方便、交互性更强。与传统的电子邮件、bbs和icq这三种互联网沟通方式相比博客是一种较严肃的沟通平台。bbs公共匿名性很强而个人性很弱因此缺乏约束。电子邮件和icq则是多用于个人间的通讯而博客是个人性和公共性的结合。博客是个人在网上展示自己、与别人沟通交流的综合平台它的管理比bbs简单的多。 1.2 开发技术 本系统在windows 8.1下采用php技术作为服务器端脚本解释器mysql作为后台数据库平台以及apache作web服务器并且使用了一些辅助开发工具和技术比如bootstrap框架 javascript, sublime text3等。1.2.1 php技术 phphypertext preprocessor超文本预处理器是一种html内嵌式的脚本语言类似asp。php的语法大部分兼容了c、java、perl并增加了php特有的语法结构可以比cgi或者perl更快速的执行动态网页只需要很少的编程知识就能建立一个交互的web站点。它可以用于管理动态内容、支持数据库、处理会话跟踪甚至构建整个电子商务站点。它支持许多流行的数据库包括 mysql、postgresql、oracle、sybase、informix 和 microsoft sql server。 php是完全免费的开源产品不用花钱你可以从php官方站点(http: /) 自由下载。而且你可以不受限制地获得源码甚至可以从中加进你自己需要的特色。apache和mysql也是同样免费开源在国外非常流行。php和mysql搭配使用可以非常快速的搭建一套不错的动态网站系统因此国外大多数主机系统都配有免费的apachephpmysql。通常认为这种搭配的执行效率比iisasp access要高而后者的使用还必须另外交钱给微软。 php具有如下的优点 1学习简单只需要了解一些基本的语法和语言特设就可以开始使用php。 数据库连接方便php可以编译成具有与许多数据库相连接的函数。php与mysql是现在绝佳的组合。可以编写外围的函数间接存取数据库。这样当更换使用的数据库时可以轻松的更改编码以适应这样的变化。phplib就是最常用的可以提供一般事务需要的一系列基库。 2扩展性强php已经进入了一个高速发展的时期具有良好的扩展附加功能。 可以进行面向对象编程php提供了类和对象基于web的编程工作非常需要面向对象编程能力。php支持构造器、提取类等。 总之php技术具有免费、跨平台、可加密、开发效率高等优点在编写小型的网站系统时较之asp、jsp等技术有一定优势。 1.2.2 php工作原理 php的所有应用程序都是通过web服务器和php引擎程序解释执行完成的工作过程: (1)当用户在浏览器地址中输入要访问的php页面文件名然后回车就会触发这个php请求并将请求传送给支持php的web服务器。 (2)web服务器接受这个请求并根据其后缀进行判断。如果是一个php请求web服务器从硬盘或内存中取出用户要访问的php应用程序并将其发送给php引擎(3)php引擎程序将会对web服务器传送过来的文件从头到尾进行扫描并根据命令从后台读取理数据并动态地生成相应的html页面。 (4)php引擎将生成html页面返回给web服务器。web服务器再将html页面返回给客户端浏览器。31.2.3 b/s结构 在当前internet/intranet领域“浏览器/服务器简称b/s”结构是非常流行的客户机/服务器结构。在b/s体系结构系统中用户通过浏览器向分布在网络上的许多服务器发出请求服务器对浏览器的请求进行处理将用户所需信息返回到浏览器。b/s结构简化了客户机的工作客户机上只需配置少量的客户端软件。服务器将担负更多的工作对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求而其余如数据请求、加工、结果返回以及动态网页生产等工作全部由web server完成。实际上b/s体系结构是把二层c/s结构的事务处理逻辑模块从客户机的任务中分离出来由web服务器单独组成一层来负担其他任务这样客户机的压力减轻了把负荷分配给了web服务器。这种三次体系结构如图1所示。 web服务器 数据库服务器 互联网 客户机1 客户机2 客户机3图1 b/s三层体系结构 这种结构不仅把客户机从沉重的负担和不断对其提高的性能的要求中解放出来也把技术维护人员从繁重的维护升级工作中解脱出来。由于客户机把事务处理逻辑部分分给了功能服务器使客户机一下子“苗条”了许多不再负责处理复杂计算和数据访问等关键事务只负责显示部分所以维护人员不再为程序的维护工作奔波于每个客户机之间而把主要精力放在功能服务器上程序的更新工作。这种三层结构在层与层之间相互独立任何一层的改变不会影响其它层的功能。1.2.4 数据库技术 数据库是数据和数据库对象的集合其中数据库对象指表table、视图view、存储过程stored procedure和触发器trigger等。数据库通过sqlstructured query 5 language来对数据进行操作和管理这里包括一些基本的操作如select、delete、insert、update语句。mysql是一个快速、多线程、多用户的小型关系型数据库管理系统。它支持正规的sql查询语言和采用多种数据类型能对数据进行各种详细的查询等。mysql提供了一全套的数据库创建和访问机制通过很直观的方式就可以创建、访问、修改数据库的表和项并且能建立它们之间的各种数据关系。mysql系列从90年代就发展起来经过了多年的反展它已经成为非常成熟的技术面向中小型企业级应用。 mysql数据库的特点是数据库文件小而简单不需要运行或者启动数据库服务进程就可以使用。通常mysql数据库文件可以随网页文件一起方便地放在网站的目录中正是由于这些特点mysql数据库通常被用来作为网站开发的数据库支持技术。 对mysql数据库的管理采用图形化管理工具phpmyadmin 。phpmyadmin是一个用php编写的、基web的、跨平台的mysql管理程序支持简体中文使用web浏览器作为管理界面。通过phpmyadmin可以进行绝大部分的mysql操作包括对数据库级操作表级操作,以及数据管理等。 标准sqlodbc驱动程序管理器 dbaodbcfor oracleodbcfor db2odbcformysqlodbcforsqlserverdbmaoraclesqlservermysqldb2data数据库应用dba通过数据库管理系统dbms访问数据库标准sql语言通过各种odbc驱动程序管理器翻译成对应数据库命令来访问各种数据库 图2 数据库管理系统和接口的原理 1.2.5 apache技术apache是最流行的web服务器端软件之一。快速、可靠、可通过简单的api扩展perl/python解释器可被编译到服务器中完全免费完全源代码开放。 apache服务器拥有以下特性1支持最新的http/1.1通信协议拥有简单而强有力的基于文件的配置过程2 支持通用网关接口3 支持基于ip和基于域名的虚拟主机4支持多种方式的http认证5 集成perl处理模块6 集成代理服务器模块7 支持实时监视服务器状态和定制服务器日志8 支持服务器端包含指令(ssi)9 支持安全socket层(ssl)10 提供用户会话过程的跟踪 11支持fastcgi通过第三方模块可以支持java servlets。 1.2.6 javascript语言 javascript语言是一种基于对象object和事件驱动event driven并具有安全性能的脚本语言。使用它的目的是与html超级文本语言、javaappletjava小程序一起实现在一个web页面中链接多个对象与web客户交互作用从而达到开发客户端应用程序的目的。javascript是通过嵌入或调入在标准html语言中实现它的出现弥补了html语言的缺陷。 在javascript语言的配合下能够运用php技术开发出非常漂亮而且交互性强大的动态web网站来.。2 系统可行性分析设计 2.1 开发的目的和背景 这里首先简要介绍系统可行性分析的目的和系统开发的相关背景。 1、编写目的 可行性分析主要介绍开发项目的一些背景系统的各方面可行性从技术、本系统的前景以及当前个人博客的特点和需求等方面展示本系统的优势和限制主要对象是网络中的上网用户以便作出正确的后继设计与开发决策。 2、项目背景 写日记、文章一直以来都作为很多人表达自己感情展示自己才华以及与外人沟通的重要方式也成为了很多人生活中的重要部分。过去人们都是靠纸和笔来实现甚至到之后有了电脑也最多用文本编辑软件来写最后还是得通过人工交换自己所写的东西无论是纸张作为载体还是电子存储设备作为载体。这样极大缩减了交流的范围和速度以及交流的频度。随着网络的开速发展它已经走入大众生活所以自然而然诞生了个人博客这样一个新兴事物它不仅仅能取代前面所说的功能还能加入图片、音乐而且使得作者更能无所拘束地生动地写出自己想写的旁人也能非常便捷地阅读并且加以评论并且它还能作为展示个人个性的窗户。更重要的是网络个人博客利用网络的巨大优势可以非常快捷、广泛而没有界限地自由交流。交流速度快、交流范围广以及可以让网络中任何人浏览、评论是博客的最大特点正是有了这些特点个人博客现在已经成为很多人生活中必不可少的一个部分它让更多人了解作者的心声方便了人与人之间的沟通和交流。2.2 系统目标和研究方法 1、系统的目标 该目标主要是结合与传统系统即传统以纸张或者磁盘、光盘为载体的写作模式的比较而定。 (1) 人力和设备的节省 传统系统主要是通过人力写作并且载体是纸张或者磁盘、光盘。而通过本系统可以节省一定写作人力并且利用网络存储方式节省了纸张资源和笔墨资源或者磁盘、光盘资源的使用。 (2)界面美观和便捷的提升 本系统相对传统系统而言利用了多媒体的各种视觉效果可以方便加入图片和背景以及表情有明显的界面美观和直观的优势。 (3)编辑修改的提升 本系统可以使对文章或者一些图片背景等的编辑修改变得非常容易非常便捷和快速。只用修改局部不用返工并且不会留下视觉瑕疵。 (4)交流广泛性和速度的提升 通过网络这种媒介使得文章、日志的交流变得非常广泛不会受到地域和世界的限制世界各地任何人都可以享受交流的服务。并且交流的速度比传统更加快速方便不通过传统载体的传递。 2.3 传统系统的分析 1、处理流程 传统系统处理流程总体功能级数据流图所示该图给出了传统方式的写作文章以及交流的方式和流程途径。d1 作者思维 获取创作信息 获取创作信息 文章作者 文章作者 构思/写作文章文章作者 图3传统系统处理流程 2、数据流图 传统系统的数据流图如图4所示该图主要给出了传统的以纸张或者磁盘为载体的文章、日志写作和交流的数据流程d1文章载体获取文章内容写作/修改命令交流处理文章写作文章事务事务写作事业文章作者文章交流记录文章交流信息d2文章交流信息交流处理文章作者日记图4传统系统数据交流图2.4 所要开发的系统的分析 对所要开发的系统的分析是从系统的描述和优越性用开发的系统的处理流程和所开发系统的数据流图dfd来说明的。 1 系统的描述和优越性 该系统是适应当前网络特点和个人个性的情况下开发的个人博客主要用于文章和系统的优越性主要体现在编辑的便捷和修改的方便以及文章的多媒体性和生动性还有就是交流的广泛性和快速。详细情况在绪论、背景以及在2.2.1已有介绍。 2 处理流程 所开发的系统处理流程总体功能级数据流图如图5所示该图给出了所要开发系统的系统工作、写作文章和文章交流的方式以及流程途径。评论数据库d2文章数据库d2用户数据库d1文章信息评论信息查询命令添加/修改命令用户数据结果查询/修改命令文章作者权限事务文章事务读者事务阅读/评论事务发表文章事务登录/操作业务文章作者图5 所要开发系统处理流程3 数据流图 所开发系统的数据流图如图6和图7所示它们都是进一步分解后的数据流图。其 10 中图6是用户管理的功能分解数据流图而图7是文章管理以及评论的功能分解数据流图。图7涉及到用户文章和评论事务和数据库的频繁存储交互体现了个人博客中文章、日志发表和评论的功能是个人博客系统中比较主要的一项事务过程。登录信息登录事务事务用户d1d1登录事务处理接受事务成功失败信息用户注册信息账号事务权限事务接受事务用户管理事务处理事务注册事务事务操作结果接受事务d1注册事务处理系统管理员图6 系统数据流图用户权限/管理 d2文章数据库事务编辑信息文章编辑信息接受事务编辑事务处理 事务文章作者操作结果信息文章数据库d2成功/失败信息文章内容信息阅读操作命令事务登录事务文章作者接受事务阅读事务处理文章数据库d3事务添加/编辑文章评论事务评论操作命令评论事务处理接受事务图7 系统数据流图文章发表/评论文章数据库2.5 系统的其它可行性 前面主要运用了系统流程图和数据流图通过对传统系统和要开发的系统分析了系统开发的可行性下面将从其它一些辅助可行性来进一步分析和说明。 1 技术可行性 本系统主要由php作为主要开发技术php已经流行和发展了数年技术相对比较成熟开发系统稳定可靠。 系采用优秀的关系型数据库管理系统mysql作为后台数据库能和windows以及11 当前各种系统很好的兼容搭配。 其它辅助网站设计的技术相当丰富相应开发环境和工具也一应俱全比如用于网页界面设计的sublime text3还有一些图形处理软件如photoshop cc等都是相当成熟和简便的开发工具。 2 性能效益可行性 所开发的系统基本能满足个人博客的功能要求和展示博客的特点风格在处理运算速度、存储量以及响应时间上完全能满足系统要求。现在网络发展迅速上网人数众多博客作为个人个性和情感的展现舞台相信有非常广阔的发展和应用空间。 3 硬件可行性 系统所采用的技术和平台都是比较成熟和已经发展数年的目前的硬件配置一般都足以满足系统的运行要求。 系统的基本硬件要求网络中的服务器服务器要求能提供空间和支持动态网络技术以及mysql数据库、客户端电脑具有基本多媒体功能和设备、支持php架构的工作和系统平台windows8.1、支持php架构的能处理动态网页技术的浏览器ie8.0以上等具备解释php技术的浏览器。2.6 可行性结论 综上所述作为毕业设计的一个项目简要讨论分析了系统的各种可行性并且各项可行性上完全满足开发要求可以开始进一步的工作。 3 系统需求分析和概要设计 一 系统需求分析 系统需求分析是现代软件工程应用于系统开发的一项重要环节通过需求分析可以明确系统的各项需求和功能根据这些需求和功能可以更好地指导下一步的系统开发和设计避免了在设计之后对需求的变更而导致的大量返工。 1. 开发背景 过去很多人都喜欢写文章写日记以及交流自己的文章和作品以求实现相互间的沟通、展现自己的才华和让别人了解自己的想法观点。现在的网络已经成为人们生活中不可或缺的一个元素所以自然而然诞生了个人博客这样一个新兴事物它不仅仅能取代前面所说的功能还能加入图片而且使得作者更能无所拘束地生动地写出自己想写的旁人也能非常便捷地阅读并且加以评论并且它还能作为展示个人个性的窗户。个人博客现在已经成为很多人生活中必不可少的一个部分方便了人与人之间的沟通和交流。 2 系统实现目标概述 基于个人博客以上的特点本系统要实现个人博客的主要基本功能有主界面用户注册注册用户登录发表文章心情、日志用户登录/退出游客发表评论分页浏览文章和评论等。这里其中比较主要的是区分了个人博客的注册用户和游客。注册用户可以在任何时候写下自己的主张记录下自己的点点滴滴。而游客主要的权限是阅读博客所有注册用户写的文章阅读后可以发表评论和留言还可以分页浏览所有注册用户上传的图片。以上是个人博客的系统功能目标当然由于个人博客的网络流行特点以及个人个性的展示还适当要求界面比较漂亮轻快直观便捷操作方式简单以及人性化。3 系统功能需求 根据对系统的特点和应用的分析可以得到本系统主要有如下功能 (1)用户注册和登录 这部分功能又分为用户注册、用户登录、用户退出三个部分。用户注册游客将个人的信息存储到博客网站的数据库中注册时要求填写用户的各种详细信息包括id、password、email、性别、生日、其它辅助信息。凡是符合要求的游客都可以注册成功成为本博客的正式用户。系统接受这些信息并存储在服务器端的数据库中。 用户登录主要用于验证博客网站用户信息的真实身份以便对博客网站进行管理和维护。通过注册后的用户用个人注册的用户名密码登录到网站。网站检测用户的用户名密码并给予其相应的权限对博客网站进行操作。用户退出已经登陆的用户可以退出释放自己所占有的各种信息资源。 (2)文章管理 文章管理主要有文章的发表、查询、浏览、评论和删除功能。 博客的系统管理员除了可以查询、浏览和评论文章外还可以对系统中的所有文章以及评论进行修改、删除操作。这些维护和管理拥有最高权限并且系统自动更新在服务器端数据库中的数据。 文章的发表注册用户可以发表自己的文章文章包括主题、正文、表情、图片等信息作者通过各种元素来展示自己的想法和思想。系统接受这些信息并且存储在服务器端的数据库中。 文章的删除注册用户可以删除自己已经发表的文章内容和各项信息系统自动在服务器端数据库中删除这些记录。文章的浏览游客和注册用户根据所获得的用户权限获取服务器端数据存储的各篇文章并且浏览阅读文章的所有信息包括标题、正文、表情、图片以及其它读者的留言评论。 文章的评论文章的读者可以评论和回复所阅读的文章发表自己的看法。系统自动将这些评论存储在服务器端的数据库中并且可供博客作者以及其它读者浏览。文章的查询注册用户可以按文章题目或作者来查询想要查的文章。 (3)图片管理 图片管理有添加浏览、删除和查询功能。注册用户可以添加自己喜欢的图片还可以查询和浏览系统中的所有图片信息。游客只能浏览博客系统中的所有图片。系统管理员拥有以上的所有权限除此之外还可以删除图片。 (4)朋友圈管理 注册用户可以添加自己的朋友信息到朋友圈可以再浏览和查询朋友信息的前提下进行删除朋友信息操作。 (5)管理员管理 博客的系统管理员可以对系统中所有的注册用户进行帐户和权限管理包括修改用户所有的权限查询用户信息以及删除用户信息还可以对最新公告进行添加删除管理。4 系统需求管理规划表 根据以上对系统的需求分析我们可以得到一个更为简明扼要的系统需求管理规划 14 表本表罗列了系统的各项主要功能并且对其分类配有间断描述最重要的室给出了各个功能需求的优先级优先级的高低表示了功能实现的迫切程度和必要程度。优级高的代表该功能是系统很重要的功能需要重点实现。5 系统性能要求 (1)系统可靠性要求 系统对用户操作有相应提示并且可以检查用户输入的各种数据的合法性对于不合法的数据屏蔽并且提示用户以避免由于越界或者格式错误而造成的系统错误甚至崩溃。 系统在对于数据库操作时候数据库有一定的约束机制。特点是对于外键fk而言通过“级连”cascade和“参照”reference来保证数据的完整性。 系统能够应对各种特殊操作情况和出错情况并且给出相应提示。 系统能够有一定的安全和保护措施以保证网站的正常运行避免文件和数据库遭到意外事件的破坏而导致网站瘫痪。 (2)系统时间要求 在不考虑网络状况情况下系统的响应时间应该相当迅速数据的存储和处理以及返回过程应该满足用户的等待需求一般控制在0.2s以内。 (3)系统适应性要求 系统应该兼容windows操作平台、mysql数据库以及ie浏览器。 (4)系统并行处理能力要求 系统能够支持同时间多用户的访问需求并且保证运行的相对顺畅。 (5)系统精度要求 时间精度到达秒为单位其它数据精确到小数点后2位。3.2 概要设计 概要设计也是软件工程中一个重要的步骤和环节根据前面的需求分析所得到的系统所要实现的各种功能概要设计对其进行进一步的模块划分以确定各个功能由所设计的模块来实现这样可以构架出一个系统的机构框架便于后面的具体数据库设计详细设计的实现。 3.2.1 系统体系结构 基于b/s结构的个人博客网站系统应由终端用户主机/浏览器、web服务器、数据服务器构成。个人博客网站的核心是中间的接入服务器和应用服务器部分。个人博客网站的总体结构图如图8所示图8博客网站总体结果web服务器数据服务器3.2.2 系统模块划分 根据前面对系统的需求分析可以得到系统的模块划分如下 (1)博客首页模块包括如下主要组成部分页整体布局对于博客的首页风格安排并且布局。日历方便用户看时间和日期。 用户登录和注册区主要是用户注册和登录在成功登录以后列出用户所拥有的可操作模块。 博客最新日志显示按时间顺序显示博客中最近的文章标题信息。最新推荐图片按时间顺序显示博客中最新上传的图片。最新公告上下滚动显示管理员发表的最新公告。 (2)文章管理模块 添加博客文章已登录的博客注册用户可以发表文章、随笔和日志内容包括标题、正文、图片、表情等信息。在此前提下只有以系统管理员身份登录的用户才可以删除博客中的任何文章系统自动更新服务器端的数据库。 查看博客文章文章作者可以按搜索条件有选择的查看想要阅读的文章并可以对它进行评论但没有删除的权限。 浏览我的文章只显示作者自己的全部文章在这个模块的前提下文章作者有删除文章和评的权限。 (3)图片管理模块 添加图片已注册用户可以本地上传图片。查询图片登录用户可以按搜索条件有选择的查看图片但没有删除的权限浏览图片分页显示系统中的全部图片。 (4)朋友圈管理模块 注册用户可以添加自己的朋友信息到朋友圈可以在浏览和查询朋友信息的前提下进行删除朋友信息操作。3.2.3 系统功能划分组织结构图 根据以上对系统功能模块的划分和设计可以得到系统功能模块图如图9所示该图给出了尽的模块划分和模块组织结构能够直观展现系统的功能结构关系。个人博客系统用户注册用户登录用户登录系统管理器文章管理朋友管理图片管理用户管理录广告管理录查询图片删除用户信息删除公告信息添加公告信息查询用户信息浏览用户信息删除朋友信息删除图片信息删除评论信息删除博客文章查询图片查询图片浏览我文章的添加博客文章查询博客文章的添加图片浏览图片查询图片查询图片图9系统功能结构图3.2.3 运行环境 (1)用户界面 用户需要网页浏览器来使用该系统界面简洁、美观、友好具备人性化特点各种操作有提示信息和错误信息。 (2)软件环境 服务器端windows8.1服务器apache服务程序mysql数据库以及其相应的odbc。客户端windows 8.1系统以及ie8.0以上浏览器。 (3)网络带宽 服务器对外网络带宽8m以上客户端拥有连接互联网的设备和服务。 4 系统数据库设计 4.1 mysql 数据库简介 mysql数据库由瑞典mysql公司开发和维护的一个精巧的sqlstructured query languag结构化查询语言关系型数据库管理系统dbms。mysql数据早在90年代中期就开始出现经过近10年的发展它已经成为一个功能相对强大技术非常成熟应用广泛的数据库。由于它的强大功能、灵活性、丰富的应用编程接口api以及精巧的系统结构受到了众多程序员和企业级用户的青睐特别是它的数据库文件小巧存放便捷数据库管理系统运行简为建立基于数据库的动态网站提供了强大动力并且得到了广大网站开发人缘的认可。 mysql数据库提供完善的sql-92标准的结构化查询语言如select、delete、insert、update语句。通过mysql在操作系统上建立的odbc可以轻松将这些sql语句翻译成为相应的mysql数据库管理系统指令并对数据库进行管理。如图10所示。 odbc驱动程序管理器odbcmysql标准sql标准sql语言通过odbc驱动程序管理器翻译成对应的mysql数据库命令来访问mysql数据库 图10 mysql数据库管理系统原理 odbcmysql标准sql标准sql语言通过odbc驱动程序管理器翻译成对应的mysql数据库命令来访问mysql数据库odbc驱动程序管理器标准sqlodbc sql图10 mysql数据库管理系统原理当然mysql数据库也完全支持ado activex data objects数据库应用程序的数据库访问技术。ado它被设计用来同新的数据库访问层ole db provider一起协同工作 以提供通用数据访问universal data mysql。ole db是一个底层的数据库访问接口用它可以访问各种数据源包括传统的关系数据库。ado封装了ole db程序中使用的大量com接口所以是一种高层访问技术。所以mysql非常适合php技术开发动态网站。4.2 数据库表的设计4.2.1 概述 根据第三部分的需求分析和概要设计可以设计出相应的系统所要使用的数据库表。博客系统所要存储的数据项和数据量相对比较复杂和庞大所以首先确定这些数据库表的设计一般是一个表存储一个实体或者对象的相关信息这样分析和设计数据库就相对简单。对于不同的对象或实体根据具体系统需要和未来扩展可以适当细分。另外扩充信息和动态变化的信息分开放置在不同的表里。当然重要的表都会设置一个唯一标识的主键这个主键不是实际运用中的任何信息项只用来唯一标识一个数据项一般用自动编号的数字。 经过需求分析和概要设计在mysql数据库管理系统中建立名为db_tmlog的数据库系统所有应用的数据信息将存储在该数据库中数据库中建立以下5种不同专题的数据表分别为用户表tb_user、文章内容表tb_article、文章评论表tb_filecomment朋友圈表tb_friend、图片信息表tb_tpsc五个表。 这些表基本上都是一表负责一个实体或者对象的各种信息存储它们协调工作以实现个人博客系统对数据存储的要求。 注意下面各表中数据类型说标有*表示是主键。 4.2.2 用户表 系统主要为了满足网络用户使用博客的需要由于网络的自身特点以及网络上联系工具众多所以用户的信息的设置相对较多这里主要的是用户的id编号这个是用来唯一确定用户的标识是用户表的主键。管理员及用户标记主要用来设置管理员和用户的权限不同的权限能得到不同的应用功能。还有用户名、用户密码都比较重要。用户表结构如表2所示。 表2用户表字段名称数据类型说明idint(20)自动编号regnamevarchar(20)用户名regrealnamevarchar(20)真实姓名regpwdvar
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年卫生行政管理岗位能力考核试题及答案
- 2025年酒店管理专业基础知识考试试题及答案
- 2025年插画设计专业毕业考试题及答案
- 2025年发展的心理学视角与教育策略的考试卷及答案
- 物资公司钢材管理制度
- 特殊学生学习管理制度
- 特种作业制度管理制度
- 特色课程安排管理制度
- 特药安全经营管理制度
- 独立老师设备管理制度
- 工控机管理制度
- 软件产品交付流程
- 机器人协同控制系统-深度研究
- 2025年1月国家开放大学行管本科《城市管理学》期末纸质考试试题及答案
- 财务会计实务 课件 053第五章第三讲 其他债权投资
- 《企业国有资产法》考试题库及答案
- 新时代中小学教师职业行为十项准则课件
- DB33T 2320-2021 工业集聚区社区化管理和服务规范
- 突发事件应急预案管理办法
- 骨与关节感染 邱贵兴-教学课件幻灯
- 校园开展安全生产课件
评论
0/150
提交评论