【PHP开源代码栏目提醒】:网学会员鉴于大家对PHP开源代码十分关注,论文会员在此为大家搜集整理了“PHP个人博客系统--毕业设计 - 毕业设计”一文,供大家参考学习
毕 业 设 计基于
PHP 的个人博客系统的实 现 学生承诺书 本人郑重承诺:所呈交的
论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本
论文不包含任何其他个人或集体已经发表或撰写的成果作品。
摘 要本系统利用
PHP 动态网络开发技术,以 MySQL 作为后台数据库,使用Apache 配置 Web 服务器,结合 JavaScript 和 HTML 两种脚本语言,以及配合多种网页开发工具,实现了基于 B/S 模式的个人日志发表和交流的平台——个人博客系统。
全文主要分为 6 个部分:第 1 部分主要介绍个人博客系统的特点、优点 第和本系统所要用到的各种开发技术; 2 部分主要论述了传统系统和所要开发系统的处理流程、功能介绍和比较;第 3 部分主要分析了系统的各项功能和性能需求,给出了系统需求管理规划表,展示了各种需求的优先级,规划和分配了各个模块所要完成的系统功能;第 4 部分系统数据库设计,主要分析和设计了系统的数据库表和项,以及数据库各项的标识符;第 5 部分系统详细设计,逐一给出了系统各个模块的详细设计过程;第 6 部分系统配置和发布,介绍了系统开发和运行的相关环境配置以及运行效果展示。
关键词:博客
PHP MySQL 动态网页 B/S 模式 目 录1 绪论 ......................................................... 11.1 个人博客 ................................................... 11.1.1 个人博客的研究意义 ....................................... 11.1.2 个人博客的简介............................................ 11.1.3 个人博客的特点............................................ 21.2 开发技术 ................................................... 31.2.1
PHP 技术.................................................. 31.2.2
PHP 工作原理.............................................. 41.2.3 B/S 结构.................................................. 51.2.4 数据库技术 ............................................... 61.2.5 Apache 技术............................................... 81.2.6 JavaScript 语言........................................... 82 系统可行性分析设计 ........................................... 92.1 开发的目的和背景 ........................................... 92.2 系统目标和研究方法 ........................................ 102.3 传统系统的分析 ............................................ 112.4 所要开发的系统的分析 ...................................... 122.5 系统的其它可行性 .......................................... 142.6 可行性结论 ................................................ 153 系统需求分析和概要设计 ...................................... 163.1 系统需求分析 .............................................. 163.1.1 开发背景 ................................................ 163.1.2 系统实现目标概述 ........................................ 163.1.3 系统功能需求 ............................................ 173.1.4 系统需求管理规划表 ...................................... 193.1.5 系统性能要求 ............................................ 213.2 概要设计 .................................................. 223.2.1 系统体系结构 ............................................ 223.2.2 系统模块划分 ............................................ 233.2.3
系统功能划分组织结构图 .................................. 243.2.3 运行环境 ................................................ 254 系统数据库
设计 .............................................. 264.1 MySQL 数据库简介 .......................................... 264.2 数据库表的设计 ............................................ 274.2.1 概述 .................................................... 274.2.2 用户表 .................................................. 284.2.3 文章内容表............................................... 294.2.4 文章评论表 .............................................. 304.2.5 图片信息表............................................... 314.2.6 朋友圈信息表 ............................................ 314.2.7 数据库 ER 关系图 ......................................... 325 系统的详细设计 .............................................. 335.1 首页面及主要页面设计 ...................................... 345.2 系统主要功能模块开发 ...................................... 355.1.1 首页模块................................................. 355.1.2 文章管理模块 ............................................ 385.1.3 图片管理模块 ............................................ 415.1.4 朋友圈管理模块 .......................................... 445.1.5 管理员管理模块........................................... 446 系统配置和发布............................................... 446.1 开发和应用环境配置 ........................................ 456.1.1 安装 Apache2.2.6 ......................................... 456.1.2 安装
PHP5.2.5............................................ 466.1.3 安装 MySQL6.0.3 .......................................... 476.1.4 安装 phpmyadmin2.11.3 .................................... 496.2 系统的发布和运行效果 ...................................... 506.2.1 系统的发布 .............................................. 506.2.2 系统运行效果 ............................................ 517 总结 ........................................................ 57致 谢 ...................................... 错误!未定义书签。
参 考 文 献 ................................................... 60Abstract ...................................................... 62仲恺农业工程学院
毕业论文设计成绩评定表 ...... 错误!未定义书签。
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 就是在网络上发 1布和阅读的流水记录,通常称为 , “网络日志” 简称为 。
“网志” 它是继 Email、BBS、IM 之后出现的第四种全新的
网络交流方式。
它绝不仅仅是一种单向的发布系统,而且有着极其出色的交流功能。
另外 Blog 也提供了非常方便实用的个性化功能。
简言之,Blog 就是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。
1.1.3 个人博客的特点 1,零机制:博客属于个人所有, BSP 是自发建立和非正式的建设。
(BlogService Provider——博客服务托管商)不能对博客发号施令。
2,零技术:博客不需要作网站的专业知识,可以像发邮件一样简单地实现博客网页的呈现。
技术的极度简化,包括架构和申请博客网站、编辑、上传和修改内容等。
3,零成本:任何一个人都可以像申请免费邮件般免费申请自己的博客网站。
不需要
注册域名的成本,不需要租用服务器空间的成本,不需要许多软件工具的成本。
4,零编辑:博客用户就是编辑,即时写作、即时发布、自我检查。
这 ,真正实现了作者“零磨损”的开放形成了与传统写作截然不同的“体验”式写作。
5,零形式:博客页面的表现形式和文章内容的表现方式十分灵活,没有特定形式。
6,与个人主页相比较,博客的使用更方便、交互性更强。
与传统的电 2子邮件、BBS 和 ICQ 这三种互联网沟通方式相比,博客是一种较严肃的沟通平台。
BBS 公共匿名性很强,而个人性很弱,因此缺乏约束。
电子邮件和 ICQ则是多用于个人间的通讯,而博客是个人性和公共性的结合。
博客是个人在网上展示自己、与别人沟通交流的综合平台,它的管理比 BBS 简单的多。
1.2 开发技术 本系统在 Windows XP 下采用
PHP 技术作为服务器端脚本解释器,MySQL作为后台数据库平台以及 Apache 作为 Web 服务器,并且使用了一些辅助开发工具和技术,比如 Dreamweaver CS3 等。
1.2.1
PHP 技术
PHP(Hypertext 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 搭配使用,可以非常快速的搭建一套不错的动态网站系统,因此国外大多数主机系统都配有免费的 APACHE+
PHP+MYSQL。
通常认为这种 3搭配的执行效率比 IIS+ASP+ACCESS 要高,而后者的使用还必须另外交钱给微软。
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 服务器。
2WEB 服务器接受这个请求,并根据其后缀进行判断。
如果是一个
PHP 4请求,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 所示。
5 图 1 B/S 三层体系结构 这种结构不仅把客户机从沉重的负担和不断对其提高的性能的要求中解放出来,也把技术维护人员从繁重的维护升级工作中解脱出来。
由于客户机把事务处理逻辑部分分给了功能服务器,使客户机一下子“苗条”了许多,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,所以维护人员不再为
程序的维护工作奔波于每个客户机之间,而把主要精力放在功能服务器上程序的更新工作。
这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。
1.2.4 数据库技术 、视 数据库是数据和数据库对象的集合,其中数据库对象指表(Table)图(View)、存储过程(Stored Procedure)和触发器(Trigger)等。
数据库通过 SQL(Structured Query Language)来对数据进行操作和管理,这里包括一些基本的操作如 select、delete、insert、update 语句。
ADO(ActiveX Data Objects)是微软开发数据库应用程序的数据库访问技术。
它被设计用来同新的数据库访问层 OLE DB Provider 一起协同工作, 。
OLE DB 是一个底层的数据以提供通用数据访问(Universal Data MySQL) 6库访问接口,用它可以访问各种数据源,包括传统的关系数据库。
ADO 封装了 OLE DB 程序中使用的大量 COM 接口,所以是一种高层访问技术。
关于数据库管理系统和接口的原理如图 2 所示。
MySQL 是一个快速、多线程、多用户的小型关系型数据库
管理系统。
它支持正规的 SQL 查询语言和采用多种数据类型,能对数据进行各种详细的
查询等。
MySQL 提供了一
全套的数据库创建和访问机制,通过很直观的方式就可以创建、访问、修改数据库的表和项,并且能建立它们之间的各种数据关系。
MySQL 系列从 90 年代就发展起来,经过了多年的反展,它已经成为非常成熟的技术,面向中小型企业级应用。
MySQL 数据库的特点是数据库文件小而简单,不需要运行或者启动数据库服务进程就可以使用。
通常 MySQL 数据库文件可以随网页文件一起方便地放在网站的目录中,正是由于这些特点,MySQL 数据库通常被用来作为网站开发的数据库支持技术。
对 MySQL 数据库的管理采用图形化管理工具 phpMyAdmin 。
phpMyAdmin是一个用
PHP 编写的、基于 Web 的、跨平台的 MySQL 管理程序,支持简体中文,使用 Web 浏览器作为管理界面。
通过 phpMyAdmin 可以进行绝大部分的MySQL 操作,包括对数据库级操作,表级操作,以及数据管理等。
7 图 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;通过第三方模块可以支持 JavaServlets。
1.2.6 JavaScript 语言
JavaScript 语言是一种基于对象(Object)和事件驱动(Event Driven) 8并具有安全性能的脚本语言。
使用它的目的是与 HTML 超级文本语言、JavaApplet(Java 小程序)一起实现在一个 Web 页面中链接多个对象,与Web 客户交互作用,从而达到开发客户端应用程序的目的。
JavaScript 是通过嵌入或调入在标准 HTML 语言中实现,它的出现弥补了 HTML 语言的缺陷。
在 JavaScript 语言的配合下,能够运用
PHP 技术开发出非常漂亮而且交互性强大的动态 Web 网站来.2 系统可行性分析设计2.1 开发的目的和背景 这里首先简要介绍系统可行性分析的目的和系统开发的相关背景。
1、编写目的 可行性分析主要介绍开发项目的一些背景,系统的各方面可行性,从技术、本系统的前景以及当前个人博客的特点和需求等方面展示本系统的优势和限制,主要对象是网络中的上网用户,以便作出正确的后继设计与开发决策。
2、项目背景 写
日记、文章一直以来都作为很多人表达自己感情,展示自己才华以及与外人沟通的重要方式,也成为了很多人生活中的重要部分。
过去人们都是靠纸和笔来实现,甚至到之后有了电脑,也最多用文本编辑软件来写,最后还是得通过人工交换自己所写的东西,无论是纸张作为载体还是电子存储设备作为载体。
这样极大缩减了交流的范围和速度以及交流的频度。
随着网络的开速发展,它已经走入大众生活,所以自然而然诞生了个人博客这样一个 9新兴事物,它不仅仅能取代前面所说的功能,还能加入图片、音乐,而且使得作者更能无所拘束地生动地写出自己想写的,旁人也能非常便捷地阅读并且加以评论,并且它还能作为展示个人个性的窗户。
更重要的是网络个人博客利用网络的巨大优势,可以非常快捷、广泛而没有界限地自由交流。
交流速度快、交流范围广以及可以让网络中任何人浏览、评论是博客的最大特点,正是有了这些特点,个人博客现在已经成为很多人生活中必不可少的一个部分,它让更多人了解作者的心声,方便了人与人之间的沟通和交流。
2.2 系统目标和研究方法 1、系统的目标 该目标主要是结合与传统系统(即传统以纸张或者磁盘、光盘为载体的写作模式)的比较而定。
(1)人力和设备的节省 传统系统主要是通过人力写作,并且载体是纸张或者磁盘、光盘。
而通过本系统,可以节省一定写作人力,并且利用网络存储方式,节省了纸张资源和笔墨资源或者磁盘、光盘资源的使用。
(2)界面美观和便捷的提升 本系统相对传统系统而言,利用了多媒体的各种视觉效果,可以方便加入图片和背景以及表情,有明显的界面美观和直观的优势。
(3)编辑修改的提升 本系统可以使对文章或者一些图片背景等的编辑修改变得非常容易,非常便捷和快速。
只用修改局部,不用返工,并且不会留下视觉瑕疵。
10 (4)交流广泛性和速度的提升 通过网络这种媒介,使得文章、日志的交流变得非常广泛,不会受到地域和世界的限制,世界各地任何人都可以享受交流的服务。
并且交流的速度比传统更加快速方便,不通过传统载体的传递。
2、可行性研究方法 (1)调研传统系统效.