免费网站推广网站短视频网站开发师招聘
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:21
当前位置: 首页 > news >正文
免费网站推广网站短视频,网站开发师招聘,基于php的网站开发,佛山做优化的公司哪家好摘 要 本系统利用PHP动态网络开发技术#xff0c;以MySQL作为后台数据库#xff0c;使用Apache配置Web服务器#xff0c;结合JavaScript和HTML两种脚本语言#xff0c;以及配合多种网页开发工具#xff0c;实现了基于B/S模式的个人日志发表和交流的平台——个人博客系统… 摘 要 本系统利用PHP动态网络开发技术以MySQL作为后台数据库使用Apache配置Web服务器结合JavaScript和HTML两种脚本语言以及配合多种网页开发工具实现了基于B/S模式的个人日志发表和交流的平台——个人博客系统。 全文主要分为6个部分第1部分主要介绍个人博客系统的特点、优点和本系统所要用到的各种开发技术第2部分主要论述了传统系统和所要开发系统的处理流程、功能介绍和比较第3部分主要分析了系统的各项功能和性能需求给出了系统需求管理规划表展示了各种需求的优先级规划和分配了各个模块所要完成的系统功能第4部分系统数据库设计主要分析和设计了系统的数据库表和项以及数据库各项的标识符第5部分系统详细设计逐一给出了系统各个模块的详细设计过程第6部分系统配置和发布介绍了系统开发和运行的相关环境配置以及运行效果展示。 关键词博客 PHP MySQL 动态网页 B/S模式 目 录 1 绪论 1.1 个人博客 1.1.1 个人博客的研究意义 1.1.2个人博客的简介 1.1.3个人博客的特点 1.2 开发技术 1.2.1 PHP技术 1.2.2 PHP工作原理 1.2.3 B/S结构 1.2.4 数据库技术 1.2.5 Apache技术 1.2.6 JavaScript语言 2 系统可行性分析设计 2.1 开发的目的和背景 2.2 系统目标和研究方法 2.3 传统系统的分析 2.4 所要开发的系统的分析 2.5 系统的其它可行性 2.6 可行性结论 3 系统需求分析和概要设计 3.1 系统需求分析 3.1.1 开发背景 3.1.2 系统实现目标概述 3.1.3 系统功能需求 3.1.4 系统需求管理规划表 3.1.5 系统性能要求 3.2 概要设计 3.2.1 系统体系结构 3.2.2 系统模块划分 3.2.3 系统功能划分组织结构图 3.2.3 运行环境 4 系统数据库设计 4.1 MySQL 数据库简介 4.2 数据库表的设计 4.2.1 概述 4.2.2 用户表 4.2.3文章内容表 4.2.4 文章评论表 4.2.5图片信息表 4.2.6 朋友圈信息表 4.2.7 数据库ER关系图 5 系统的详细设计 5.1 首页面及主要页面设计 5.2 系统主要功能模块开发 5.1.1首页模块 5.1.2 文章管理模块 5.1.3 图片管理模块 5.1.4 朋友圈管理模块 5.1.5管理员管理模块 6系统配置和发布 6.1 开发和应用环境配置 6.1.1安装Apache2.2.6 6.1.2 安装PHP5.2.5 6.1.3安装MySQL6.0.3 6.1.4安装phpmyadmin2.11.3 6.2 系统的发布和运行效果 6.2.1 系统的发布 6.2.2 系统运行效果 7 总结 致 谢 参 考 文 献 Abstract 1 绪论
博客数字生活新时尚通过文字、图片、声音等尽情展示自我、分享感受、参与交流美好你我生活。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 XP下采用PHP技术作为服务器端脚本解释器MySQL作为后台数据库平台以及Apache作为Web服务器并且使用了一些辅助开发工具和技术比如Dreamweaver CS3等。
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: //www.php.net)自由下载。而且你可以不受限制地获得源码甚至可以从中加进你自己需要的特色。Apache和MYSQL也是同样免费开源在国外非常流行。PHP和MYSQL搭配使用可以非常快速的搭建一套不错的动态网站系统因此国外大多数主机系统都配有免费的APACHEPHPMYSQL。通常认为这种搭配的执行效率比IISASPACCESS要高而后者的使用还必须另外交钱给微软。
PHP具有如下的优点
1学习简单只需要了解一些基本的语法和语言特设就可以开始使用PHP。
数据库连接方便PHP可以编译成具有与许多数据库相连接的函数。PHP与MYSQL是现在绝佳的组合。可以编写外围的函数间接存取数据库。这样当更换使用的数据库时可以轻松的更改编码以适应这样的变化。PHPLIB就是最常用的可以提供一般事务需要的一系列基库。
2扩展性强PHP已经进入了一个高速发展的时期具有良好的扩展附加功能。
可以进行面向对象编程PHP提供了类和对象基于WEB的编程工作非常需要面向对象编程能力。PHP支持构造器、提取类等。
总之PHP技术具有免费、跨平台、可加密、开发效率高等优点在编写小型的网站系统时较之ASP、JSP等技术有一定优势。
1.2.2 PHP工作原理
PHP的所有应用程序都是通过WEB服务器(如apache)和PHP引擎程序解释执行完成的工作过程
(1)当用户在浏览器地址中输入要访问的PHP页面文件名然后回车就会触发这个PHP请求并将请求传送给支持PHP的WEB服务器。
(2)WEB服务器接受这个请求并根据其后缀进行判断。如果是一个PHP请求WEB服务器从硬盘或内存中取出用户要访问的PHP应用程序并将其发送给PHP引擎程序。
(3)PHP引擎程序将会对WEB服务器传送过来的文件从头到尾进行扫描并根据命令从后台读取处理数据并动态地生成相应的HTML页面。
(4)PHP引擎将生成HTML页面返回给WEB服务器。WEB服务器再将HTML页面返回给客户端浏览器。
1.2.3 B/S结构
在当前Internet/Intranet领域“浏览器/服务器简称B/S”结构是非常流行的客户机/服务器结构。在B/S体系结构系统中用户通过浏览器向分布在网络上的许多服务器发出请求服务器对浏览器的请求进行处理将用户所需信息返回到浏览器。B/S结构简化了客户机的工作客户机上只需配置少量的客户端软件。服务器将担负更多的工作对数据库的访问和应用程序的执行将在服务器上完成。浏览器发出请求而其余如数据请求、加工、结果返回以及动态网页生产等工作全部由Web Server完成。实际上B/S体系结构是把二层C/S结构的事务处理逻辑模块从客户机的任务中分离出来由Web服务器单独组成一层来负担其他任务这样客户机的压力减轻了把负荷分配给了Web服务器。这种三次体系结构如图1所示。 图1 B/S三层体系结构 这种结构不仅把客户机从沉重的负担和不断对其提高的性能的要求中解放出来也把技术维护人员从繁重的维护升级工作中解脱出来。由于客户机把事务处理逻辑部分分给了功能服务器使客户机一下子“苗条”了许多不再负责处理复杂计算和数据访问等关键事务只负责显示部分所以维护人员不再为程序的维护工作奔波于每个客户机之间而把主要精力放在功能服务器上程序的更新工作。这种三层结构在层与层之间相互独立任何一层的改变不会影响其它层的功能。
1.2.4 数据库技术
数据库是数据和数据库对象的集合其中数据库对象指表Table、视图View、存储过程Stored Procedure和触发器Trigger等。数据库通过SQLStructured Query Language来对数据进行操作和管理这里包括一些基本的操作如select、delete、insert、update语句。 ADOActiveX Data Objects是微软开发数据库应用程序的数据库访问技术。它被设计用来同新的数据库访问层OLE DB Provider一起协同工作以提供通用数据访问Universal Data MySQL。OLE DB是一个底层的数据库访问接口用它可以访问各种数据源包括传统的关系数据库。ADO封装了OLE DB程序中使用的大量COM接口所以是一种高层访问技术。关于数据库管理系统和接口的原理如图2所示。
MySQL是一个快速、多线程、多用户的小型关系型数据库管理系统。它支持正规的SQL查询语言和采用多种数据类型能对数据进行各种详细的查询等。MySQL提供了一全套的数据库创建和访问机制通过很直观的方式就可以创建、访问、修改数据库的表和项并且能建立它们之间的各种数据关系。MySQL系列从90年代就发展起来经过了多年的反展它已经成为非常成熟的技术面向中小型企业级应用。
MySQL数据库的特点是数据库文件小而简单不需要运行或者启动数据库服务进程就可以使用。通常MySQL数据库文件可以随网页文件一起方便地放在网站的目录中正是由于这些特点MySQL数据库通常被用来作为网站开发的数据库支持技术。
对MySQL数据库的管理采用图形化管理工具phpMyAdmin 。phpMyAdmin是一个用PHP编写的、基于Web的、跨平台的MySQL管理程序支持简体中文使用Web浏览器作为管理界面。通过phpMyAdmin可以进行绝大部分的MySQL操作包括对数据库级操作表级操作以及数据管理等。 图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、可行性研究方法
1调研传统系统效率和特点
通过调研和对比传统系统的工作方式和特点发现效率和实用性的差距。通过理论和现实技术发展的特点和要求估算和提出效率、功能的提升。
2参考目前已有的网站和案例
如今博客在网络上比比皆是可以参考和学习已有的一些优秀个人博客的特点和成功之处来发现传统系统需要改进的地方和新的开发入口。
2.3 传统系统的分析
1、处理流程
传统系统处理流程总体功能级数据流图如图3所示该图给出了传统方式的写作文章以及交流的方式和流程途径。 图3 传统系统处理流程 2、数据流图
传统系统的数据流图如图4所示该图主要给出了传统的以纸张或者磁盘为载体的文章、日志写作和交流的数据流程。 图4 传统系统数据流图 2.4 所要开发的系统的分析
对所要开发的系统的分析是从系统的描述和优越性用开发的系统的处理流程和所开发系统的数据流图DFD来说明的。
1 系统的描述和优越性
该系统是适应当前网络特点和个人个性的情况下开发的个人博客主要用于文章和日志的写作以及交流评论。其主要特点在前面的绪论和2.1.2已经有详细的介绍。
系统的优越性主要体现在编辑的便捷和修改的方便以及文章的多媒体性和生动性还有就是交流的广泛性和快速。详细情况在绪论、背景以及在2.2.1已有介绍。
2 处理流程
所开发的系统处理流程总体功能级数据流图如图5所示该图给出了所要开发系统的系统工作、写作文章和文章交流的方式以及流程途径。 图5 所要开发系统处理流程 3 数据流图
所开发系统的数据流图如图6和图7所示它们都是进一步分解后的数据流图。其中图6是用户管理的功能分解数据流图而图7是文章管理以及评论的功能分解数据流图。图7涉及到用户文章和评论事务和数据库的频繁存储交互体现了个人博客中文章、日志发表和评论的功能是个人博客系统中比较主要的一项事务过程。 图6 系统数据流图用户权限/管理 图7 系统数据流图文章发表/评论 2.5 系统的其它可行性
前面主要运用了系统流程图和数据流图通过对传统系统和要开发的系统分析了系统开发的可行性下面将从其它一些辅助可行性来进一步分析和说明。
1 技术可行性
本系统主要由PHP作为主要开发技术PHP已经流行和发展了数年技术相对比较成熟开发系统稳定可靠。
系统采用优秀的关系型数据库管理系统MYSQL作为后台数据库能和Windows以及当前各种系统很好的兼容搭配。
其它辅助网站设计的技术相当丰富相应开发环境和工具也一应俱全比如用于网页界面设计的Dreamweaver CS3还有一些图形处理软件如Photoshop CS2等都是相当成熟和简便的开发工具。
2 性能效益可行性
所开发的系统基本能满足个人博客的功能要求和展示博客的特点风格在处理运算速度、存储量以及响应时间上完全能满足系统要求。
现在网络发展迅速上网人数众多博客作为个人个性和情感的展现舞台相信有非常广阔的发展和应用空间。
3 硬件可行性
系统所采用的技术和平台都是比较成熟和已经发展数年的目前的硬件配置一般都足以满足系统的运行要求。
系统的基本硬件要求网络中的服务器服务器要求能提供空间和支持动态网络技术以及MySQL数据库、客户端电脑具有基本多媒体功能和设备、支持PHP架构的工作和系统平台WindowsXP、支持PHP架构的能处理动态网页技术的浏览器IE6.0以上等具备解释PHP技术的浏览器。
2.6 可行性结论 综上所述作为毕业设计的一个项目简要讨论分析了系统的各种可行性并且各项可行性上完全满足开发要求可以开始进一步的工作。
3 系统需求分析和概要设计
3.1 系统需求分析
系统需求分析是现代软件工程应用于系统开发的一项重要环节通过需求分析可以明确系统的各项需求和功能根据这些需求和功能可以更好地指导下一步的系统开发和设计避免了在设计之后对需求的变更而导致的大量返工。
3.1.1 开发背景
过去很多人都喜欢写文章写日记以及交流自己的文章和作品以求实现相互间的沟通、展现自己的才华和让别人了解自己的想法观点。现在的网络已经成为人们生活中不可或缺的一个元素所以自然而然诞生了个人博客这样一个新兴事物它不仅仅能取代前面所说的功能还能加入图片而且使得作者更能无所拘束地生动地写出自己想写的旁人也能非常便捷地阅读并且加以评论并且它还能作为展示个人个性的窗户。个人博客现在已经成为很多人生活中必不可少的一个部分方便了人与人之间的沟通和交流。
3.1.2 系统实现目标概述
基于个人博客以上的特点本系统要实现个人博客的主要基本功能有主界面用户注册注册用户登录发表文章心情、日志用户登录/退出游客发表评论分页浏览文章和评论等。这里其中比较主要的是区分了个人博客的注册用户和游客。注册用户可以在任何时候写下自己的主张记录下自己的点点滴滴。而游客主要的权限是阅读博客所有注册用户写的文章阅读后可以发表评论和留言还可以分页浏览所有注册用户上传的图片。以上是个人博客的系统功能目标当然由于个人博客的网络流行特点以及个人个性的展示还适当要求界面比较漂亮轻快直观便捷操作方式简单以及人性化。
3.1.3 系统功能需求
根据对系统的特点和应用的分析可以得到本系统主要有如下功能
1用户注册和登录 这部分功能又分为用户注册、用户登录、用户退出三个部分。
用户注册游客将个人的信息存储到博客网站的数据库中注册时要求填写用户的各种详细信息包括id、Password、Email、性别、生日、其它辅助信息。凡是符合要求的游客都可以注册成功成为本博客的正式用户。系统接受这些信息并存储在服务器端的数据库中。
用户登录主要用于验证博客网站用户信息的真实身份以便对博客网站进行管理和维护。通过注册后的用户用个人注册的用户名密码登录到网站。网站检测用户的用户名密码并给予其相应的权限对博客网站进行操作。
用户退出已经登陆的用户可以退出释放自己所占有的各种信息资源。
2文章管理
文章管理主要有文章的发表、查询、浏览、评论和删除功能。
博客的系统管理员除了可以查询、浏览和评论文章外还可以对系统中的所有文章以及评论进行修改、删除操作。这些维护和管理拥有最高权限并且系统自动更新在服务器端数据库中的数据。
文章的发表注册用户可以发表自己的文章文章包括主题、正文、表情、图片等信息作者通过各种元素来展示自己的想法和思想。系统接受这些信息并且存储在服务器端的数据库中。
文章的删除注册用户可以删除自己已经发表的文章内容和各项信息系统自动在服务器端数据库中删除这些记录。
文章的浏览游客和注册用户根据所获得的用户权限获取服务器端数据存储的各篇文章并且浏览阅读文章的所有信息包括标题、正文、表情、图片以及其它读者的留言评论。
文章的评论文章的读者可以评论和回复所阅读的文章发表自己的看法。系统自动将这些评论存储在服务器端的数据库中并且可供博客作者以及其它读者浏览。
文章的查询注册用户可以按文章题目或作者来查询想要查的文章。
3图片管理
图片管理有添加浏览、删除和查询功能。注册用户可以添加自己喜欢的图片还可以查询和浏览系统中的所有图片信息。游客只能浏览博客系统中的所有图片。系统管理员拥有以上的所有权限除此之外还可以删除图片。
4朋友圈管理
注册用户可以添加自己的朋友信息到朋友圈可以再浏览和查询朋友信息的前提下进行删除朋友信息操作。
5管理员管理
博客的系统管理员可以对系统中所有的注册用户进行帐户和权限管理包括修改用户所有的权限查询用户信息以及删除用户信息还可以对最新公告进行添加删除管理。
3.1.4 系统需求管理规划表
根据以上对系统的需求分析我们可以得到一个更为简明扼要的系统需求管理规划表本表罗列了系统的各项主要功能并且对其分类配有间断描述最重要的室给出了各个功能需求的优先级优先级的高低表示了功能实现的迫切程度和必要程度。优级高的代表该功能是系统很重要的功能需要重点实现。如表1所示。 表1 系统需求管理规划表 需求分类 需求名称 描述 优先级 功能性需求 用户注册 用户可以注册自己的各项信息 高 用户登录/退出 用户可以登录或者退出系统 高 用户权限管理 博客管理员可以修改用户的权限以及删除用户账号 高 文章的添加 注册用户可以发表文章包括表情、图片、链接等 高 文章的删除 博客管理员可以删除任何一篇文章 但注册用户只能删除自己写的文章 中 文章列表 对文章按一定类型或者顺序用列表方式展示题目 中 浏览文章 博客文章读者可以分页浏览文章 高 评论文章 博客文章读者可以对文章进行评论和回复 高 评论的删除 博客管理员可以删除某篇文章的某条评论 中 朋友信息添加 注册用户可以添加自己朋友的信息 高 浏览朋友信息 注册用户可以浏览自己朋友的信息 高 查询朋友信息 注册用户可以查询自己朋友的信息 高 添加图片 注册用户可以上传自己喜欢的图片与人分享 高 浏览图片 图片的浏览者可以分页浏览图片 高 删除图片 博客管理员可以删除博客网站中的某张图片 中 查询图片 用户可以查询图片 高 特征和前景 预算 项目开发成本控制在毕业设计范围内 低 系统目标 设计和实现个人博客系统达到毕业设计的目标和要求 高 非功能性需求 平台限制 基于Windows XP ,Apache2.2.4以上PHPMySQL数据库 高 操作方式 全部操作都能基于浏览器进行 低 硬件需求 网络服务器P3以上、128MB以上多媒体工作站 互连网络连接以及相应设备 中 3.1.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 博客网站总体结构 3.2.2 系统模块划分
根据前面对系统的需求分析可以得到系统的模块划分如下 1博客首页模块包括如下主要组成部分
页整体布局对于博客的首页风格安排并且布局。
日历方便用户看时间和日期。
用户登录和注册区主要是用户注册和登录在成功登录以后列出用户所拥有的可操作模块。
博客最新日志显示按时间顺序显示博客中最近的文章标题信息。
最新推荐图片按时间顺序显示博客中最新上传的图片。
最新公告上下滚动显示管理员发表的最新公告。
2文章管理模块
添加博客文章已登录的博客注册用户可以发表文章、随笔和日志内容包括标题、正文、图片、表情等信息。在此前提下只有以系统管理员身份登录的用户才可以删除博客中的任何文章系统自动更新服务器端的数据库。
查看博客文章文章作者可以按搜索条件有选择的查看想要阅读的文章并可以对它进行评论但没有删除的权限。
浏览我的文章只显示作者自己的全部文章在这个模块的前提下文章作者有删除文章和评论的权限。
3图片管理模块
添加图片已注册用户可以本地上传图片。
查询图片登录用户可以按搜索条件有选择的查看图片但没有删除的权限
浏览图片分页显示系统中的全部图片。
4朋友圈管理模块
注册用户可以添加自己的朋友信息到朋友圈可以在浏览和查询朋友信息的前提下进行删除朋友信息操作。
5管理员管理模块
博客的系统管理员可以对系统中所有的注册用户进行帐户和权限管理包括修改用户所有的权限查询用户信息以及删除用户信息还可以对最新公告进行添加删除管理。
3.2.3 系统功能划分组织结构图
根据以上对系统功能模块的划分和设计可以得到系统功能模块图如图9所示该图给出了详尽的模块划分和模块组织结构能够直观展现系统的功能结构关系。 图9 系统功能结构图 3.2.3 运行环境
1用户界面
用户需要网页浏览器来使用该系统界面简洁、美观、友好具备人性化特点各种操作有提示信息和错误信息。
2软件环境
服务器端WindowsXP服务器Apache服务程序MySQL数据库以及其相应的ODBC。
客户端Windows XP系统以及IE6.0以上浏览器。
3网络带宽
服务器对外网络带宽1M以上客户端拥有连接互联网的设备和服务。
4 系统数据库设计
4.1 MySQL 数据库简介
MySQL数据库由瑞典MySql公司开发和维护的一个精巧的SQLStructured Query Language结构化查询语言关系型数据库管理系统DBMS。MySQL数据早在90年代中期就开始出现经过近10年的发展它已经成为一个功能相对强大技术非常成熟应用广泛的数据库。由于它的强大功能、灵活性、丰富的应用编程接口API以及精巧的系统结构受到了众多程序员和企业级用户的青睐特别是它的数据库文件小巧存放便捷数据库管理系统运行简单为建立基于数据库的动态网站提供了强大动力并且得到了广大网站开发人缘的认可。 MySQL数据库提供完善的SQL-92标准的结构化查询语言如select、delete、insert、update语句。通过MySQL在操作系统上建立的ODBC可以轻松将这些SQL语句翻译成为相应的MySQL数据库管理系统指令并对数据库进行管理。如图10所示。 图10 MySQL数据库管理系统原理 作为关系型数据MySQL完全支持对于各种数据库对象的管理和便捷操作这里包括表Table、视图View、存储过程Stored Procedure和触发器Trigger等。MySQL数据库提供完全的可视化管理环境能够直观便捷而快速地对数据库的各种数据库对象和元素进行修改和管理。 当然MySQL数据库也完全支持ADOActiveX 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用户表 字段名称 数据类型 说明 id Int(20) * 自动编号 regname Varchar(20) 用户名 regrealname Varchar(20) 真实姓名 regpwd Varchar(20) 用户密码 regbirthday date 用户生日 regemail Varchar(100) E-mail地址 regcity Varchar(100) 所在城市 regico Varchar(50) 人物表情 regsex Varchar(4) 性别 regqq Varchar(40) QQ号 reghomepage Varchar(100) 个人主页 regsign Varchar(200) 个性化签名 regintroduce text 自我简介 ip Varchar(20) 用户IP fig int(1) 管理员及用户标记 4.2.3文章内容表
本表主要用来存放文章的各种信息这也是博客系统中非常重要的一个表。其中文章ID编号为主键唯一标识一篇文章。其它信息详见表3所示。 表3 文章内容表 字段名称 数据类型 说明 id Int(10) * 自动编号 title Varchar(20) 文章标题 face Varchar(20) 人物表情 content text 文章内容 auther Varchar(20) 文章作者 now datetime 发表时间 4.2.4 文章评论表
文章评论表主要存储对一篇文章的评论的各种信息文章的评论信息相对于文章的信息而言要简单一些主要包括唯一标识评论的id编号是主键。表的结构如表4所示。 表4 文章评论表 字段名称 数据类型 说明 id Int(4)* 自动编号 fileid Int(4) 所评论的文章id号 usename Varchar(20) 评论人 content text 评论正文 datetime datetime 评论时间 4.2.5图片信息表
该表主要用来存储博客系统中发表的照片、图片。其中照片id是唯一标识图片的主键表的详细结构如表5所示。 表5 图片信息表 字段名称 数据类型 说明 id Int(10) * 自动编号 name Varchar(30) 图片名称 url Char(100) 以文件的形式存储图片 author Varchar(20) 图片发表者 scsj date 上传日期/时间 4.2.6 朋友圈信息表
该表主要用来存储某用户的朋友圈信息。其中id是唯一标识朋友信息的主键表的详细结构如表6所示。 表6 朋友圈信息表 字段名称 数据类型 说明 id Int(4) * 自动编号 name Varchar(50) 朋友名称 sex Varchar(10) 性别 bir date 生日 city Varchar(50) 所在城市 address Varchar(100) 家庭住址 postcode Varchar(6) 邮政编码 email Varchar(50) E-mail地址 tel Varchar(20) 电话号码 handset Varchar(20) 手机号码 qq Varchar(20) QQ号 username Varchar(20) 用户名 4.2.7 数据库ER关系图
数据库中的表有用户表、文章信息表、文章评论表、图片信息表、朋友圈信息表。本系统数据库的5个表的ER图如图11所示。 图11 数据库中5个表的ER图 5 系统的详细设计
详细设计是整个系统设计中最重要的一个步骤。下面对系统的主要功能模块进行详细的介绍。
博客网站的流程图如图12所示。 图12 博客网站流程图 5.1 首页面及主要页面设计
1、博客网站的文件架设图如图13所示 图13博客网站文件架设图
2、主要页面如表7所示 表7 主要页面清单表 文件名 说明 index.php 普通用户登录页面用户只要输入已注册的用户名和密码 Register.php 新用户注册页面 file.php 用户登录后的页面同时也是添加博客文章页面 query.php 查询博客文章页面 myfiles.php 显示我的文章页面 add_pic.php 添加图片页面 browse_pic.php 浏览图片页面 query_pic.php 查询图片页面 friend.php 朋友添加页面 browse_fri.php 浏览朋友信息页面 query_friend.php 查询朋友信息页面 queryuser.php 查询用户信息页面只有管理员有权限查看 browseuser.php 浏览用户信息页面只有管理员有权限浏览 managepub.php 公告管理页面只有管理员有权限查看 5.2 系统主要功能模块开发
5.1.1首页模块
1、博客的首页是相当重要的这不仅仅是整个博客的第一影响而且是展现个人博客系统的布局、美工、风格和个性的窗口。它包括博客最新日志区、日历和时钟区、最新图片上传区、最新公告区用户登录、注册区。把这几个界面区合理的组合是布局和美工的重要之处。如图14所示: 图14 个人博客首页 首页模块index.php中包括了数据库连接文件conn.php首页的布局和美工设计使用到了Dreamweaver CS3网页开发工具作为辅助开发运用这个可视化开发工具Visual Development Tool可以快捷地设计出Web的界面自动生成相应的HTML代码并得到的HTML代码直接嵌入到index.php文件中。 2、用户注册子模块是在“博客首页”的前提下操作的主要由register.php完成。用户点击“博客注册”进入用户注册界面然后阅读用户注册协议确认后可以到达正式注册页面否则返回。在正式注册页面中用户填写各种信息包括姓名、密码等。用户的“密码”和“确认密码”必须一致才能注册否则提示用户两次输入密码不一致。一切信息正确后系统会在数据库中为该用户自动生成一个用户ID编号这个编号是自动递增的生成用来唯一标识一个用户。具体流程图如图15所示。 图15用户注册流程图 3、用户登录和退出
用户登录同样是在 “博客首页”的前提下操作的经过注册的用户可以选择登录帐户已经登录的用户也可以选择退出帐户。登录时首先客户端发送登录请求给服务器端服务器端通过数据库检查该用户名是否存在如果存在检查密码是否正确在密码也正确情况下系统服务器端给予登录响应。登录后的用户将获得响应权限的功能。
而用户退出是在用户登录的前提下操作的这时已经登录的用户选择退出即可退出服务器并且释放Cookie和Session中的相关信息和资源。具体流程图如图16所示。 图16用户登陆和退出流程图 5.1.2 文章管理模块
文章管理模块是本系统中最基础、最复杂的一个核心功能模块。文章管理模块可以分为添加博客文章、查询博客文章、发表文章评论、删除博客文章/评论4个功能部分。 1添加博客文章
发表博客文章主要是提供用户发表和张贴个人的文章或是对某些事物的独到见解等通过发表的文章其他用户可以发表相关的评论以便能够同来访者进行交流是一个展现自己的网络交流平台。
这个功能主要由file.php完成。发表文章后提交博客文章信息到数据处理页check_file.php并保存在相应的数据库中。在保存过程中系统会在数据库中为该文章自动生成一个文章ID编号这个编号是自动递增的生成用来唯一标识一篇文章。具体流程图如图17所示。 图17发表文章流程图
2文章的查询
发表文章子模块主要由query.php实现。在query.php页面中查询的功能区如图18在”查询条件”后的下拉列表框中选择查询条件。在“关键字“后面的文本框中输入查询条件所对应的查询关键字既可快速检索到相应的数据信息。如果存在输出数据信息到浏览器否则弹出警告信息。
注意只有系统管理员具备删除的操作权限如果是普通的博客用户在查询到的数据信息页面中是不会显示“删除“超级链接。 图18文章查询的功能区 3发表文章评论
发表文章评论是在“查询博客文章“的前提下操作的。当页面显示查询的文章信息后可以点击“发表评论”超级链接既可跳转到comment.php页发表评论如图19。 图19发表评论页面 4删除博客文章/评论
这功能若是在“查询博客页面” 的前提下进行操作的删除权限都是系统管理员的操作权限。若是在“我的文章”的前提下进行的操作那删除权限是属于普通用户的操作权限。页面和图19类似
5.1.3 图片管理模块
图片管理主要实现对图片的添加、删除、浏览和查询操作。
添加图片
单击【上传】按钮后图片将以文件的形式传到数据库并保存在images文件中的upload文件夹中。上传的设计流程和页面分别如图20和图21所示。 图20 图片上传设计流程 图21 添加图片 浏览图片
所有上传成功的图片文件循环显示在客户端的浏览器上并在每一条的记录后面分别加上用于查看图片文件信息的超级链接按钮在将所有记录进行分页显示。
查询图片
图片的查询功能和文章的查询功能类似这里不再赘述。同样地只有系统管理员具备删除的操作权限如果是普通的博客用户在查询到的数据信息页面中是不会显示“删除“超级链接。具体流程图如图22所示。 图22 图片查询流程图 删除图片
只有以系统管理员的身份登录才会显示“删除图片”的功能。删除图片的功能是系统管理员在“查询图片”和“浏览图片”的功能模块的基础上实现的。
5.1.4 朋友圈管理模块
朋友圈管理主要针对用户交友圈的信息进行管理其中添加、浏览、删除朋友圈的功能与文章、图片管理的功能类似这里不再赘述。下面重点讲解查询朋友信息功能。
朋友信息的查询与文章、图片的查询略有不同这里查询的是该用户交际圈的信息它查询不到所有用户的交际圈的信息。
5.1.5管理员管理模块
管理员管理是对注册的用户信息进行管理的模块。当用户是以系统管理员的身份登陆网站后那么将拥有用户管理的权限这时菜单栏中的“管理员管理”处于显示状态如是普通用户该模块不会显示。该模块主要分为查询用户信息浏览用户信息和公告管理。其中用户的删除是建立在“查询用户信息”和“浏览用户信息”的基础之上实现的。
6系统配置和发布
运用PHP对系统进行开发和应用必须首先安装和配置好相应的开发环境和支持组件。本章主要介绍系统相关环境的配置和开发后系统的发布情况以及运行效果。
6.1 开发和应用环境配置
下面简要从PHP架构的安装Apache服务器的配置以及MySQL数据的设置介绍了系统相关环境的配置和安装。
6.1.1安装Apache2.2.6
运行安装程序 → 安装协议选择接受协议→ next →填写服务信息→前面的内容可填可不填安装类型选择自定义安装 Custom→自定义安装设置如下图23修改安装目录可以放在如“E:\Apache2”中 → 安装确认。 图23自定义安装设置 安装完毕后测试在浏览器地址栏输入 http://localhost回车显示 “It works”表示Apache安装成功。
6.1.2 安装PHP5.2.5
1解压php-5.2.5-Win32.zip到即将安装PHP的目录即“E:\php5”。这里主要是拷贝一些以后需要的组件。
2, 运行安装程序 → 接受安装协议 → 选择安装目录可以为“E:\php5”→ 选择Web服务器设置这里选择Apache2.2.x Module因为装的Apache服务器为2.2.6→ 选择Apache配置文件目录 即E:\Apache2→安装设置点Extensions尔后NEXT → 准备安装
3对Apache进行设置建立studyphp 子目录即“E:\studyphp”目录 → 修改“E:\Apache2\conf”下的文件“httpd.conf”。
搜索DocumentRoot E:/ Apache2 /htdocs把冒号中的E:/ Apache2/htdocs替换成“E:/studyphp
搜索Directory E:/ Apache2 /htdocs 把冒号中的E:/ Apache2 /htdocs替换成“E:/studyphp
上面这两行可以不改那么以后添加的论坛程序就要放在E:/ Apache2 /htdocs下面就是以这个目录作为根目录。改的目的就是不想把所有网站程序都放在Apache的目录下面。
搜索DirectoryIndex index.html 增加为DirectoryIndex index.html index.php
上面这句为了能够运行缺省的页面这里增加了 index.php作为缺省页面。
修改完毕保存并重新启动Apache服务器也许会启动不成功这时要不按CtrlAltDel删除Apache相关程序要不重新启动计算机。
4测试在“E:/studyphp”目录中可以使用笔记本编辑文件 ?php phpinfo(); ? 并在保存文件时改名为test.php。在浏览器地址栏中输入 http://localhost/test.php显示如下图24表示安装Apache和PHP成功。
- 上一篇: 免费网站推广方式国外有网站备案制度吗
- 下一篇: 免费网站推广网址电子商务应用平台包括哪些
相关文章
-
免费网站推广方式国外有网站备案制度吗
免费网站推广方式国外有网站备案制度吗
- 技术栈
- 2026年03月21日
-
免费网站图片素材18成禁人养成游戏手游
免费网站图片素材18成禁人养成游戏手游
- 技术栈
- 2026年03月21日
-
免费网站申请注册无锡做食品网站的公司简介
免费网站申请注册无锡做食品网站的公司简介
- 技术栈
- 2026年03月21日
-
免费网站推广网址电子商务应用平台包括哪些
免费网站推广网址电子商务应用平台包括哪些
- 技术栈
- 2026年03月21日
-
免费网站无需下载直接观看网站开发用电脑配置
免费网站无需下载直接观看网站开发用电脑配置
- 技术栈
- 2026年03月21日
-
免费网站营销计划网站工信部本案
免费网站营销计划网站工信部本案
- 技术栈
- 2026年03月21日
