1、PHP个人博客系统毕业设计范本模板毕 业 设 计 题目: 基于PHP的个人博客系统的实现院系: 电子信息工程学院专业: 计算机应用姓名: 孟德堃 摘 要本系统利用PHP动态网络开发技术,以MySQL作为后台数据库,使用Apache配置Web服务器,结合JavaScript和HTML两种脚本语言,以及配合多种网页开发工具,实现了基于B/S模式的个人日志发表和交流的平台-个人博客系统。全文主要分为6个部分:第1部分主要介绍个人博客系统的特点、优点和本系统所要用到的各种开发技术;第2部分主要论述了传统系统和所要开发系统的处理流程、功能介绍和比较;第3部分主要分析了系统的各项功能和性能需求;第4部分系
2、统数据库设计,主要分析和设计了系统的数据库表和项,以及数据库各项的标识符;第5部分系统详细设计,逐一给出了系统各个模块的详细设计过程;第6部分系统配置和发布,介绍了系统开发和运行的相关环境配置以及运行效果。关键词:博客 PHP MySQL 动态网页 B/S模式一、 绪论博客,数字生活新时尚,通过文字、图片、声音等,尽情展示自我、分享感受、参与交流,美好你我生活.Show you, share me,人人都可以博客,人人都需要博客.1。1 个人博客1。1。1 个人博客的研究意义越来越多的网络用户希望能够在网络平台上更多地展现自己的个性,更方便地与人互动交流,在传统的WEB1。0时代,无论是论坛、
3、社区还是个人网站,都试图在这些方面进行努力,随着WEB2。0时代的到来,一个新的概念出现了-博客。随着计算机网络的飞速发展,博客已经成为写网络日志必不可少的一种工具,也是一种简单有效的提供网络用户之间进行在线交流的网络平台,通过其可以结交更多的朋友,表达更多的想法,它随时可以发布日志,方便快捷。访客可以直接在个人Blog上留言,如提出问题或意见等。个人博客的发展,也已经成为广告商业务拓展的重要领域。总之,Blog是继Email、BBS、ICQ之后的第四种网络交互方式。Blog是未来信息化教育和个人知识管理的强大而简单易用的工具。1。1.2个人博客的简介“博客”一词是从英文单词Blog翻译而来.
4、Blog是Weblog的简称,而Weblog则是由Web和Log两个英文单词组合而成。Weblog就是在网络上发布和阅读的流水记录,通常称为“网络日志”,简称为“网志”。它是继Email、BBS、IM之后出现的第四种全新的网络交流方式。它绝不仅仅是一种单向的发布系统,而且有着极其出色的交流功能。另外Blog也提供了非常方便实用的个性化功能。简言之,Blog就是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。1.2 开发技术本系统在Windows 7下采用PHP技术作为服务器端脚本解释器,MySQL作为后台数据库平台以及Ap
5、ache作为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 和
6、Microsoft SQL Server。PHP是完全免费的开源产品,不用花钱,你可以从PHP官方站点(http: /www。php。net)自由下载。而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色.Apache和MYSQL也是同样免费开源,在国外非常流行。PHP和MYSQL搭配使用,可以非常快速的搭建一套不错的动态网站系统,因此国外大多数主机系统都配有免费的APACHEPHPMYSQL。通常认为这种搭配的执行效率比IISASPACCESS要高,而后者的使用还必须另外交钱给微软.PHP具有如下的优点:1学习简单:只需要了解一些基本的语法和语言特设,就可以开始使用PHP。数据库连
7、接方便:PHP可以编译成具有与许多数据库相连接的函数.PHP与MYSQL是现在绝佳的组合。可以编写外围的函数间接存取数据库。这样当更换使用的数据库时,可以轻松的更改编码以适应这样的变化.PHPLIB就是最常用的可以提供一般事务需要的一系列基库。2扩展性强:PHP已经进入了一个高速发展的时期,具有良好的扩展附加功能。可以进行面向对象编程:PHP提供了类和对象,基于WEB的编程工作非常需要面向对象编程能力。PHP支持构造器、提取类等。总之,PHP技术具有免费、跨平台、可加密、开发效率高等优点,在编写小型的网站系统时较之ASP、JSP等技术有一定优势.1.2.2 PHP工作原理PHP的所有应用程序都
8、是通过WEB服务器(如apache)和PHP引擎程序解释执行完成的,工作过程: (1)当用户在浏览器地址中输入要访问的PHP页面文件名,然后回车就会触发这个PHP请求,并将请求传送给支持PHP的WEB服务器。 (2)WEB服务器接受这个请求,并根据其后缀进行判断.如果是一个PHP请求,WEB服务器从硬盘或内存中取出用户要访问的PHP应用程序,并将其发送给PHP引擎程序. (3)PHP引擎程序将会对WEB服务器传送过来的文件从头到尾进行扫描并根据命令从后台读取,处理数据,并动态地生成相应的HTML页面。(4)PHP引擎将生成HTML页面返回给WEB服务器。WEB服务器再将HTML页面返回给客户端
9、浏览器。 二、 系统可行性分析设计 2.1 开发的目的和背景1、编写目的可行性分析主要介绍开发项目的一些背景,系统的各方面可行性,从技术、本系统的前景以及当前个人博客的特点和需求等方面展示本系统的优势和限制,主要对象是网络中的上网用户,以便作出正确的后继设计与开发决策。2、项目背景写日记、文章一直以来都是人们表达情感的方式,随着互联网的高速发展,诞生了博客这一新生事物,博客不仅能实现文字的表达,还能在其中加入图片、声音等,而且具备与人互动的特点,使其深受人们的喜爱。2。2 系统目标和研究方法1、系统的目标该目标主要是结合与传统系统(即传统以纸张或者磁盘、光盘为载体的写作模式)的比较而定。(1)
10、人力和设备的节省传统系统主要是通过人力写作,并且载体是纸张或者磁盘、光盘。而通过本系统,可以节省一定写作人力,并且利用网络存储方式,节省了纸张资源和笔墨资源或者磁盘、光盘资源的使用。(2)界面美观和便捷的提升本系统相对传统系统而言,利用了多媒体的各种视觉效果,可以方便加入图片和背景以及表情,有明显的界面美观和直观的优势.(3)编辑修改的提升本系统可以使对文章或者一些图片背景等的编辑修改变得非常容易,非常便捷和快速。只用修改局部,不用返工,并且不会留下视觉瑕疵。(4)交流广泛性和速度的提升通过网络这种媒介,使得文章、日志的交流变得非常广泛,不会受到地域和世界的限制,世界各地任何人都可以享受交流的
11、服务.并且交流的速度比传统更加快速方便,不通过传统载体的传递。 2、可行性研究方法(1)调研传统系统效率和特点通过调研和对比传统系统的工作方式和特点,发现效率和实用性的差距。通过理论和现实技术发展的特点和要求,估算和提出效率、功能的提升。(2)参考目前已有的网站和案例如今博客在网络上比比皆是,可以参考和学习已有的一些优秀个人博客的特点和成功之处,来发现传统系统需要改进的地方和新的开发入口。2.3 系统的可行性1 技术可行性本系统主要由PHP作为主要开发技术,PHP已经流行和发展了数年,技术相对比较成熟,开发系统稳定可靠。系统采用优秀的关系型数据库管理系统MYSQL作为后台数据库,能和Windo
12、ws以及当前各种系统很好的兼容搭配。其它辅助网站设计的技术相当丰富,相应开发环境和工具也一应俱全,比如用于网页界面设计的Dreamweaver CS3,还有一些图形处理软件如Photoshop CS2等都是相当成熟和简便的开发工具。2 性能效益可行性所开发的系统基本能满足个人博客的功能要求和展示博客的特点风格,在处理运算速度、存储量以及响应时间上完全能满足系统要求。而且能够有巨大的广告效益。3 硬件可行性系统所采用的技术和平台都是比较成熟和已经发展数年的,目前的硬件配置一般都足以满足系统的运行要求。系统的基本硬件要求:网络中的服务器(服务器要求能提供空间和支持动态网络技术以及MySQL数据库)
13、、客户端电脑(具有基本多媒体功能和设备)、支持PHP架构的工作和系统平台(WindowsXP)、支持PHP架构的能处理动态网页技术的浏览器(IE6.0以上等具备解释PHP技术的浏览器)。2.4可行性结论 综上所述,作为毕业设计的一个项目,简要讨论分析了系统的各种可行性,并且各项可行性上完全满足开发要求,可以开始进一步的工作。三、 系统需求分析和概要设计3。1 系统需求分析系统需求分析是现代软件工程应用于系统开发的一项重要环节,通过需求分析可以明确系统的各项需求和功能,根据这些需求和功能可以更好地指导下一步的系统开发和设计,避免了在设计之后对需求的变更而导致的大量返工。3。1。1 开发背景写日记
14、、文章一直以来都是人们表达情感的方式,随着互联网的高速发展,诞生了博客这一新生事物,博客不仅能实现文字的表达,还能在其中加入图片、声音等,而且具备与人互动的特点,使其深受人们的喜爱。3。1.2 系统实现目标概述基于个人博客以上的特点,本系统要实现个人博客的主要基本功能有主界面,用户注册,注册用户登录发表文章(心情、日志),用户登录/退出,游客发表评论,分页浏览文章和评论等。这里其中比较主要的是区分了个人博客的注册用户和游客.注册用户可以在任何时候写下自己的主张,记录下自己的点点滴滴。而游客主要的权限是阅读博客所有注册用户写的文章,阅读后可以发表评论和留言,还可以分页浏览所有注册用户上传的图片。
15、以上是个人博客的系统功能目标,当然由于个人博客的网络流行特点以及个人个性的展示,还适当要求界面比较漂亮轻快,直观便捷,操作方式简单以及人性化。3。1.3 系统功能需求根据对系统的特点和应用的分析,可以得到本系统主要有如下功能:(1)用户注册和登录 这部分功能又分为用户注册、用户登录、用户退出三个部分。用户注册:游客将个人的信息存储到博客网站的数据库中,注册时要求填写用户的各种详细信息,包括id、Password、Email、性别、生日、其它辅助信息。凡是符合要求的游客都可以注册成功,成为本博客的正式用户,。系统接受这些信息并存储在服务器端的数据库中。用户登录:主要用于验证博客网站用户信息的真实
16、身份,以便对博客网站进行管理和维护.通过注册后的用户用个人注册的用户名,密码登录到网站。网站检测用户的用户名,密码并给予其相应的权限对博客网站进行操作.用户退出:已经登陆的用户可以退出,释放自己所占有的各种信息资源.(2)文章管理文章管理主要有文章的发表、浏览、评论和删除功能。博客的系统管理员除了可以查询、浏览和评论文章外,还可以对系统中的所有文章以及评论进行修改、删除操作。这些维护和管理拥有最高权限,并且系统自动更新在服务器端数据库中的数据.文章的发表:注册用户可以发表自己的文章,文章包括主题、正文、表情、图片等信息,作者通过各种元素来展示自己的想法和思想。系统接受这些信息并且存储在服务器端
17、的数据库中.文章的删除:注册用户可以删除自己已经发表的文章内容和各项信息,系统自动在服务器端数据库中删除这些记录。文章的浏览:游客和注册用户根据所获得的用户权限获取服务器端数据存储的各篇文章并且浏览阅读文章的所有信息。文章的评论:文章的读者可以评论和回复所阅读的文章,发表自己的看法。系统自动将这些评论存储在服务器端的数据库中,并且可供博客作者以及其它读者浏览。(3)图片管理图片管理有添加,浏览、删除和查询功能。注册用户可以添加自己喜欢的图片,还可以查询和浏览系统中的所有图片信息.游客只能浏览博客系统中的所有图片。系统管理员拥有以上的所有权限,除此之外还可以删除图片。(4)管理员管理博客的系统管
18、理员可以对系统中所有的注册用户进行帐户和权限管理,包括修改用户所有的权限,查询用户信息以及删除用户信息;还可以对最新公告进行添加,删除管理。3。2 概要设计概要设计也是软件工程中一个重要的步骤和环节,根据前面的需求分析所得到的系统所要实现的各种功能,概要设计对其进行进一步的模块划分,以确定各个功能由所设计的模块来实现,这样可以构架出一个系统的机构框架,便于后面的具体数据库设计详细设计的实现。3。2。1 系统体系结构基于B/S结构的个人博客网站系统,应由终端(用户主机/浏览器)、WEB服务器、数据服务器构成。个人博客网站的核心是中间的接入服务器和应用服务器部分。个人博客网站的总体结构图如图1示:
19、图1博客网站总体结构3。2.2 运行环境(1)用户界面用户需要网页浏览器来使用该系统,界面简洁、美观、友好,具备人性化特点,各种操作有提示信息和错误信息.(2)软件环境服务器端:Windows7服务器,Apache服务程序,MySQL数据库以及其相应的ODBC。客户端:Windows 7系统以及IE6。0以上浏览器.(3)网络带宽服务器对外网络带宽1M以上,客户端拥有连接互联网的设备和服务。四、 系统数据库设计4.1 MySQL 数据库简介MySQL数据库由MySql公司开发和维护的一个SQL关系型数据库管理系统(DBMS)。经过了很多年的发展已经成为一个功能比较强大,技术也很成熟的数据库。由
20、于它的强大功能、丰富的应用编程接口(API)以及系统结构,受到了众多程序员的青睐,得到了广大网站开发人缘的认可。4。2 数据库表的设计4.2。1 概述根据第三部分的需求分析和概要设计,可以设计出相应的系统所要使用的数据库表。对于不同的对象或实体,可根据具体的系统需要,扩充信息和动态变化的信息分类放在不同的表里。重要的表都是设置上主键,主键只用来唯一标识一个数据项。经过需求分析和概要设计,在MySql数据库管理系统中建立名为db_tmlog的数据库,系统所有应用的数据信息将存储在该数据库中,数据库中建立以下3种不同专题的数据表,分别为:文章内容表(tb_article)、文章评论表(tb_fil
21、ecomment)、图片信息表(tb_tpsc)五个表。这些表基本上都是一表负责一个实体或者对象的各种信息存储,它们协调工作,以实现个人博客系统对数据存储的要求。4.2.2文章内容表本表主要用来存放文章的各种信息,这也是博客系统中非常重要的一个表.其中文章ID编号为主键,唯一标识一篇文章。其它信息详见表1示。表1文章内容表字段名称数据类型说明idInt(10) 自动编号titleVarchar(20)文章标题faceVarchar(20)人物表情contenttext文章内容autherVarchar(20)文章作者nowdatetime发表时间4.2。3 文章评论表文章评论表主要存储对一篇文
22、章的评论的各种信息,文章的评论信息相对于文章的信息而言要简单一些,主要包括唯一标识评论的id编号,是主键。表的结构如表2示。表2文章评论表字段名称数据类型说明idInt(4)自动编号fileidInt(4)所评论的文章id号usenameVarchar(20)评论人contenttext评论正文datetimedatetime评论时间4.2。4图片信息表该表主要用来存储博客系统中发表的照片、图片。其中照片id是唯一标识图片的主键,表的详细结构如表3示。表3图片信息表字段名称数据类型说明idInt(10) 自动编号nameVarchar(30)图片名称urlChar(100)以文件的形式存储图片
23、authorVarchar(20)图片发表者scsjdate上传日期/时间五、系统的设计详细设计是整个系统设计中,最重要的一个步骤。下面对系统的主要功能模块进行详细的介绍.博客网站的流程图如图2示。图2 博客网站流程图5.1 首页面及主要页面设计1、博客网站的文件架设图如图3所示: 2、主要页面如表4所示:表4 主要页面清单表文件名说明index.php普通用户登录页面,用户只要输入已注册的用户名和密码Register.php新用户注册页面file。php用户登录后的页面,同时也是添加博客文章页面query.php查询博客文章页面myfiles。php显示我的文章页面add_pic.php添加
24、图片页面browse_pic。php浏览图片页面query_pic.php查询图片页面friend。php朋友添加页面browse_fri.php浏览朋友信息页面query_friend。php查询朋友信息页面queryuser。php查询用户信息页面(只有管理员有权限查看)browseuser.php浏览用户信息页面(只有管理员有权限浏览)managepub.php公告管理页面(只有管理员有权限查看)5。1。2 文章管理模块文章管理模块是本系统中最基础、最复杂的一个核心功能模块.文章管理模块可以分为添加博客文章、查询博客文章、发表文章评论、删除博客文章/评论4个功能部分.( 1)添加博客文章
25、发表博客文章主要是提供用户发表和张贴个人的文章或是对某些事物的独到见解等,通过发表的文章,其他用户可以发表相关的评论,以便能够同来访者进行交流,是一个展现自己的网络交流平台。这个功能主要由file。php完成。发表文章后,提交博客文章信息到数据处理页(check_file。php)并保存在相应的数据库中。在保存过程中,系统会在数据库中为该文章自动生成一个文章ID编号,这个编号是自动递增的生成,用来唯一标识一篇文章。具体流程图如图4所示。 图4 发表文章流程图5.1.3 图片管理模块图片管理主要实现对图片的添加、删除、浏览操作。(1)添加图片单击【上传】按钮后,图片将以文件的形式传到数据库,并保
26、存在images文件中的upload文件夹中.浏览图片所有上传成功的图片文件循环显示在客户端的浏览器上,并在每一条的记录后面分别加上用于查看图片文件信息的超级链接按钮,在将所有记录进行分页显示。(2)删除图片只有以系统管理员的身份登录,才会显示“删除图片的功能。删除图片的功能是系统管理员在“查询图片和“浏览图片”的功能模块的基础上实现的。5.1.4管理员管理模块管理员管理是对注册的用户信息进行管理的模块。当用户是以系统管理员的身份登陆网站后,那么将拥有用户管理的权限,这时菜单栏中的“管理员管理”处于显示状态(如是普通用户,该模块不会显示)。该模块主要分为查询用户信息,浏览用户信息和公告管理。其
27、中用户的删除是建立在“查询用户信息和“浏览用户信息”的基础之上实现的。六、系统配置和发布6。1 开发和应用环境配置下面简要从PHP架构的安装,Apache服务器的配置,以及MySQL数据的设置介绍了系统相关环境的配置和安装。6.1.1安装Apache2。2.6运行安装程序 安装协议(选择接受协议) next 填写服务信息前面的内容可填可不填,安装类型(选择自定义安装 Custom)自定义安装设置修改安装目录,可以放在如“E:Apache2中 安装确认.6。1.2 安装PHP5。2.51,解压php-5.2.5Win32.zip到即将安装PHP的目录,即“E:php5。这里主要是拷贝一些以后需要
28、的组件。2, 运行安装程序 接受安装协议 选择安装目录,可以为“E:php5” 选择Web服务器设置,这里选择Apache2.2。x Module(因为装的Apache服务器为2.2.6) 选择Apache配置文件目录 (即E:Apache2)安装设置,点Extensions,尔后NEXT 准备安装3,对Apache进行设置,建立studyphp 子目录,即“E:studyphp”目录 修改“E:Apache2conf”下的文件“httpd.conf.搜索DocumentRoot ”E:/ Apache2 /htdocs”把冒号中的E:/ Apache2/htdocs,替换成“E:/study
29、php ;搜索Directory ” E:/ Apache2 /htdocs ” 把冒号中的E:/ Apache2 /htdocs,替换成“E:/studyphp ”;上面这两行可以不改,那么以后添加的论坛程序就要放在E:/ Apache2 /htdocs下面,就是以这个目录作为根目录。改的目的就是不想把所有网站程序都放在Apache的目录下面。搜索DirectoryIndex index.html 增加为DirectoryIndex index。html index。php上面这句为了能够运行缺省的页面,这里增加了 index.php作为缺省页面。修改完毕,保存,并重新启动Apache服务器
30、,也许会启动不成功,这时要不按Ctrl+Alt+Del删除Apache相关程序,要不重新启动计算机。4,测试在“E:/studyphp”目录中,可以使用笔记本编辑文件 ?php phpinfo(); ? 并在保存文件时改名为test。php。6。1。3安装MySQL6。0。31,运行安装程序 安装选项 (选择custom 自定义) 修改安装目录,放在“E:mysql” 准备安装 安装完毕后,选择现在进行MySQL设置进行详细设置 选择服务器类型,选择“Dedicated MySQL Server Machine(专门的数据库服务器,mysql占用所有可用资源 选择服务器用途,“Multifun
31、ctional Database(通用多功能型,速度快) InnoDB数据库空间设置(可以不用去改) 设置服务器同时连接数为Decision Support(DSS)/OLAP(20个左右) 设置网路选项 设置选择缺省的字符,选择第三项,进行手动设置,选择“gbk”设置windows选项,这两个选项都选上 设置密码,Modify Security Settings 设置密码,远程登录页不需要设置。匿名帐户就不用设置了 准备安装 安装完成6。1.4安装phpmyadmin2。11.31、直接解压该程序到E:studyphp就可以了 .重命名解压目录为phpMyAdmin。2、设置phpMyAdmin。用记事本编辑文件“E:studyphpphpMyAdminlibrariesconfig.default
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1