《个人博客的设计与实现(共31页).doc》由会员分享,可在线阅读,更多相关《个人博客的设计与实现(共31页).doc(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上郑州旅游职业学院毕业设计( 论文)个人博客的设计与实现 姓 名:李治坦学 号:年 级:14级系 别:信息工程专 业:计算机网络指导教师:王桂凤年月日专心-专注-专业毕业设计(论文)诚信声明书本人声明:本人所提交的毕业论文个人博客的设计与实现 是本人在指导教师指导下独立研究、写作的成果,论文中所引用他人的无论以何种方式发布的文字、研究成果,均在论文中加以说明;有关教师、同学和其他人员对本文的写作、修订提出过并为我在论文中加以采纳的意见、建议,均已在我的致谢辞中加以说明并深致谢意。本论文和资料若有不实之处,本人承担一切相关责任。论文作者: (签字) 时间: 年 月 日指导
2、教师已阅: (签字) 时间: 年 月 日郑州旅游职业学院毕业论文(设计)任务书毕业设计题目: 个人博客的设计与实现 学生姓名: 专业班级: 学号: 主要任务:需要提交的文档:发出任务书日期: 完成期限: 指 导 教 师: 系部主任: 说明:如计算机输入,内容小四号字。本任务书一式二份,教师、学生各执一份摘 要目前Internet早已深入我们的生活,而这工程真正的开始时间是1962年。发展至今已经变的异常庞大,而近段时间发展最快的当数电子商务系统。互联网经过各种高潮低谷起伏后,各种类型的网站如雨后春笋般突军崛起。然而随着计算机的发展和普及,Blog得到了极大的发展Blog是Weblog(网络日志
3、)的简称,即个人博客系统。Blog是即E-mail、BBS、ICQ之后的第四种网络交流方式。它以个人为中心传播出版有影响力的消息、新闻、事件等,鲜明的个人特色引人瞩目,它以独特的视角、敏锐的观察力,不断的冲击传统媒体。传统的Blog已经满足不了社会的需要,拥有更多更新功能的Blog急需走上舞台。为了方便广大朋友沟通交流,特此开发了个人博客系统。本系统是根据网络需求而设计的一款个人博客软件,本文主要介绍了个人博客系统中的前台查看日志,留言,评论,相册和后台管理的设计与实现。本系统利用PHP动态网络开发技术,以MySQL作为后台数据库,使用Apache配置Web服务器,结合jquery框架,以及J
4、avaScript和HTML脚本语言,并采用了templates模板技术,以及配合多种网页开发工具,实现了基于B/S模式的个人日志发表和交流的平台个人博客系统。本设计后台主要包括四大模块:基本设置模块、日志管理模块、博客管理模块、相册管理模块,同时该系统又实现多用户权限管理功能,系统管理员可以查看到整个系统的所有模块,而普通用户只能查看到日志管理模块,这种多元化的权限管理真正的实现了人人都可以博客,人人都需要博客,让更多的朋友都可以参与到博客中来,成为博客日志中的作者。关键词: PHP;MYSql;博客Abstract(英文摘要)Currently Internet has long been
5、 deep into our lives, and the real start time of this project is 1962. Development has become very huge, and the fastest growing period of time when the number of electronic commerce system. After the ups and downs of the Internet through a variety of ups and downs, the emergence of a variety of typ
6、es of Web sites springing up. However, with the development and popularization of the computer, Blog has been greatly developed Weblog is Blog (network log), namely, the personal blog system. Blog is that E-mail, BBS, ICQ after the fourth kinds of network communication. It is the center of personal
7、communication and publication of influential news, news, events, etc., distinctive personal characteristics of the attention, it with a unique perspective, keen observation, and constantly impact the traditional media. The traditional Blog can not meet the needs of the community, with more updated f
8、eatures of the Blog need to go on stage. In order to facilitate the communication between friends, we have developed a personal blog system.This system is designed according to the network needs of a personal blog software, this paper mainly introduces the personal blog system in the front view log,
9、 message, comment, photo album and background management design and implementation. The system uses PHP dynamic network development technique, using MySQL as the back-end database, using the Apache configuration Web server, combined with the jQuery framework, and JavaScript and HTML scripting langua
10、ge, and uses the templates template technology, and cooperate with a variety of web development tools, has developed a personal blog system platform B/S mode and communication based on personal journal published.The backstage mainly includes four modules: the basic settings module, log management mo
11、dule, management module, blog, photo album management module, the system and implementation of user privilege management function, the system administrator can view all modules of the whole system, and ordinary users can only view the log management module, management authority of the diversified re
12、al everyone can realize that everyone needs a blog, blog, let more friends will be able to participate in the blog, a blog log writer.Key Words:PHP;MYSql;Blog目 录第1章 绪论1.1个人博客系统开发背景个人博客(Blog)主要应用于3个方面:一是新的人际交流方式;二是以个人为中心的信息摘选和知识管理;三是以个人为中心的传播出版。blog作为个人的一种学习工具,简单易用,吸引人的兴趣。Blog在教育方面得到了很大的发展,它将互联网从过去的通
13、讯功能,资料功能、交流功能等进一步强化,使其更加个性化、开放化、实时化、全球化,把信息共享发展到资源共享、思想共享、生命历程共享。Blog已经成为一种继课件、积件、资源库、教育主题网站等信息化教学模式之后,新的网络应用模式。它是应时代的需求而兴起的,也是应时代需求不断进步的。因此,我决定选择个人博客系统作为本人的毕业设计,力求开发出一套界面友好,功能强大,为广大的博友们提供高效、稳定,且在使用上又极其简单、舒适的博客服务。1.2个人博客系统开发意义“博客”一词是从英文单词Blog翻译而来。随着Blog人数的增加,Blog作为一种新的生活方式、新的工作方式和新的学习方式已经被越来越多的人所接受,
14、并且在改变传统的网络和社会结构。它使交流和沟通更有明确的选择和方向性;单一的思想和群体的智慧结合变得更加有效;个人出版变成人人都可以实现的梦想。Blog正在影响和改变着我们的生活。Blog是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。展示丰富的个性化,对Blog功能的要求自然更高,新一代具有更多、更新、更全功能的Blog急需走进舞台。系统加入聊天功能可以更加方便大家的交流。1.3个人博客系统可行性分析1.3.1 可行性研究与个人主页相比较,博客的使用更方便、交互性更强。与传统的电子邮件、BBS和ICQ这三种互联网沟通方
15、式相比,博客是一种较严肃的沟通平台。BBS公共匿名性很强,而个人性很弱,因此缺乏约束。电子邮件和ICQ则是多用于个人间的通讯,而博客是个人性和公共性的结合。博客是个人在网上展示自己、与别人沟通交流的综合平台,它的管理比BBS简单的多。1.3.2 技术可行性本系统使用Zend Studio工具开发,数据库使用Mysql数据库,服务器是Apache。本人通过大学的学习,已经熟练掌握了这几种软件的开发技术,再加上指导老师的悉心帮助,因此技术上是可行的。1.3.3 经济可行性本系统的开发需要资金甚少,系统开发运行后,任何一个人都可以向博客管理者申请成为博客的会员,审核通过后即可在博客上发表日志成为博客
16、系统的作者。因此在经济上是绝对可行的。1.3.4 操作可行性本系统直观易懂,使用方便,用户可以直接上手。对于管理员,只要经过简单的培训,也可轻松管理本系统。第2章 相关技术概述2.1 B/S结构简介B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的
17、总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、速度快、效果优。2.2 Zend Studio简介Zend Studio是当今最伟大的PHP集成开发环境 。Zend Studio包括了PHP开发所有必须
18、的部件,通过一整套编辑、调试、分析、优化和数据库工具,使用Zend Studio 缩短了开发周期,并简化了复杂的应用方案,无容置疑,其已经是当今世上最强大的PHP集成开发环境。 Zend Studio的强大之处,除了一般编辑器所具有的代码高亮,语法自动缩进,书签功能外,它内置的调试器更是无可挑剔,支持本地和远程(debug server)两种调试模式,支持诸如跟踪变量、单步运行、断点、堆栈信息、函数调用、查看实时输出等多种高级调试功能。另外,最新版(Zend Studio 5.5.1)对中文的支持也是非常稳定的。2.3、PHP简介PHP(Hypertext Preprocessor超文本预处理
19、器)是一种HTML内嵌式的脚本语言(类似ASP)。PHP的语法大部分兼容了C、JAVA、Perl,并增加了PHP特有的语法结构,可以比CGI或者Perl更快速的执行动态网页,只需要很少的编程知识就能建立一个交互的WEB站点。它可以用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电子商务站点。它支持许多流行的数据库,包括 MySQL、PostgreSQL、Oracle、Sybase、Informix 和 Microsoft SQL Server。2.4、Apache简介Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。 2.5、MySQL数据库
20、简介MySQL是一个快速、多线程、多用户的小型关系型数据库管理系统。它支持正规的SQL查询语言和采用多种数据类型,能对数据进行各种详细的查询等。MySQL提供了一全套的数据库创建和访问机制,通过很直观的方式就可以创建、访问、修改数据库的表和项,并且能建立它们之间的各种数据关系。MySQL系列从90年代就发展起来,经过了多年的反展,它已经成为非常成熟的技术,面向中小型企业级应用。2.6、Jquery简介Jquery是继prototype之后又一个优秀的Javascrpt框架。它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safa
21、ri 2.0+, Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。<script type="text/javascript" src= "/Public/Js/jquery-1.6.2.min.js" &
22、gt; </script> 这个就是我们网站的jq,这里面的代码不要深究,其实就是用js封装的。自己也能封装。jquery提供了很多便利的函数,如each(fn),但是使用这些函数的前提是:你使用的对象是Jquery对象。 第3章 需求分析3.1、用户需求分析过去很多人都喜欢写文章写日记以及交流自己的文章和作品,以求实现相互间的沟通、展现自己的才华和让别人了解自己的想法观点。现在的网络已经成为人们生活中不可或缺的一个元素,所以自然而然诞生了个人博客这样一个新兴事物,它不仅仅能取代前面所说的功能,还能加入图片,音乐而且使得作者更能无所拘束地生动地写出自己想写的,旁人也能非常便捷地阅读
23、并且加以评论,并且它还能作为展示个人个性的窗户。个人博客现在已经成为很多人生活中必不可少的一个部分,方便了人与人之间的沟通和交流。用户模型如图3-1所示软件面向用户模型日志管理博客管理系统设置相册管理图3-1面向用户模型图3.2、组织机构和角色3.2.1角色视图如图3-2:用户管理员游客图3-2角色模型图3.2.2角色说明游客:可以查看到博客前台的所有内容,并可以对相关信息进行回复,游客可以联系管理员申请成为本系统会员。用户:成为会员后可以在博客随意发表日志和管理自己的日志,用户是系统的使用者之一。管理员:管理员是通过本系统进行日志管理,博客管理,相册管理的的高级人员,权限最高。3.2.3游客
24、功能模块游客可以查看博客的日志、相册、博主和用户们的心情说说,以及回复留言板和评论日志及说说等功能。游客功能模块如图3-3.游客查看相册查看回复说说回复留言板查看评论日志图3-3游客功能模块用例图3.2.4用户功能模块用户登录到博客后台可以修改个人信息、管理评论,发布日志和说说,也可以存日志草稿并且管理日志。用户功能模块如图3-4.用户管理评论说说功能日志草稿管理日志写日志用户登录个人信息图3-4用户功能模块用例图3.2.5管理员功能模块管理员权限最高,可以进行该系统的所有操作。包括对日志信息、博客信息、用户信息和相册信息的管理,同时还可以修改博客的基本设置。管理员功能模块如图3-5.管理员基
25、本设置相册管理博客管理日志管理登录图3-5管理员功能模块用例图3.3、数据分析3.3.1日志数据分析 日志模块包含标题,内容,标签,分类,以及高级设置等功能,其中高级设置选项包含日志摘要、日志访问密码以及日志置顶和允许评论等选项。日志数据设定概图如图3-6,3-7。日志标题内容标签分类高级设置图3-6日志数据设定概图高级设置日志摘要访问密码日志置顶允许评论图3-7高级设置设定概图3.3.2说说数据分析用户和管理员都可以登录后台输入心情文字,进行说说设置。说说数据设定概图如图3-8说说内容数据图3-8说说数据设定概图3.3.3分类数据分析该项只有管理员可以操作,分类数据包括序号,名称,别名等数据
26、。分类数据设定概图如图3-9分类数据序号名称别名图3-9说说数据设定概图3.3.4页面数据分析该项只有管理员可以操作,页面数据包括标题、内容、转向地址、新窗口打开、页面接受评论等数据。页面数据设定概图如图3-10页面数据标题内容转向地址页面接受评论新窗口打开图3-10页面数据设定概图3.3.5链接数据分析该项只有管理员可以操作,链接数据包括序号、名称、地址、描述等数据。页面数据设定概图如图3-11链接数据序号名称地址描述图3-11链接数据设定概图3.3.6用户数据分析用户数据包括用户名、昵称、密码、电子邮件、头像、个人描述等数据。页面数据设定概图如图3-12用户数据昵称密码电子邮件用户名个人描
27、述头像图3-12用户数据设定概图3.3.7相册数据分析相册数据包括图片名称,上传名称、上传时间,相薄、权限的数据分析如图3-13相册数据上传名称上传时间相簿图片名称权限图3-13相册数据分析概图第4章 系统设计4.1系统功能模块概要设计本阶段设计的基本目标是解决系统如何实现问题,本阶段的主要任务是划分出系统的物理元素及设计软件的结构,完成软件定义时期的任务之后就应该对系统进行总体设计,即根据系统分析产生的分析结果来确定这个系统由那些子系统和模块组成,这些系统和模块又如何有机的结合在一起,每个模块的功能如何实现。系统设计的目标是使系统实现拥有所要求的功能,同时,力争达到高效率、高可靠性、可修改性
28、,并且容易掌握和使用。4.2系统功能模块详细设计4.2.1系统功能结构图经过对系统的需求分析,将前台子系统分为六部分:会员登录、日志显示、说说、相册、留言板、以及侧栏功能模块的展示。将后台子系统分为日志管理、博客管理、相册管理以及基本设置管理。其中日志管理包括写日志、草稿,日志、说说、标签、分类、评论;博客管理包括模块、页面、链接、用户。系统的功能结构模块图如图4-1所示。会员登录个人博客前台日志显示说说个人博客管理个人博客后台相册留言板侧栏栏目博客管理日志管理相册管理基本设置写日志草稿日志说说标签分类评论模块页面链接用户图4-1个人博客系统功能结构模块图4.2.2系统活动图活动图用以描述一个
29、过程或者插座的工作步骤,管理过程中的每一步或每一个工作步骤成为一个活动,每个活动都有一个活动名换成来表示,说明活动的主要内容,代表工作过程中的一步或一个步骤。本系统中的管理员活动图,其流程为管理员首先进入登录界面,输入用户名和密码,系统进行身份验证,若系统没有检索到用户名,则不允许登录,否则进一步比较用户密码,若登录成功则进入说管理模块。本系统活动图如图4-2。图4-2 管理人员登录活动图4.2.3用例分析UML提供了用例图用于了解用户需求,用例图强调系统的整体性,强调系统外在的功能,强调系统对使用者有什么帮助和好处,强调系统与外部的交互。本文中采用用例技术进行需求分析的获取和分析。为了能正确
30、的找出系统的用例,需要确定系统的边界,找出系统的执行者。本系统的用例图如图4-3所示。管理员查看日志评论日志查看说说查看相册写日志说说管理评论标签日志分类博客管理相册管理博客设置游客用户图4-3个人博客管理系统用例图4.3数据库设计4.3.1 数据库结构设计ER模型直接从现实世界抽象出实体类型及实体间的联系,然后用ER图来表示数据模型。它又两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。但ER模型只能说明实体间予以的联系,不能进一步说明详细的数据结构,它只是数据库设计的第一步。本系统的ER图如图4-4。图4-4 ER图4.3.2 数据库物理设计本系统采用的数据库管理系统是
31、Mysql数据库。数据库名称为blogsnew,数据库中表分别为日志表、评论表、说说表、相册表、设置表。表4.1日志(blog_blog)表名称类型说明是否为空备注gidmediumint(8)编号否主键titlevarchar(255)日志标题否datebigint(20)日期否contentlongtext内容否authorint(10)用户否sortidtinyint(3)分类ID否typevarchar(20)日志名称否longtext日志摘要否viewsmediumint(8)浏览次数否comnummediumint(8)评论次数否topenum('n','y
32、')置顶否allow_remarkenum('n','y')允许回复否passwordvarchar(255)日志密码否表4.2评论(blog_comment)表名称类型说明是否为空备注cidmediumint(8)评论编号否主键gidmediumint(8)日志编号否与日志表关联pidmediumint(8)回复编号否datebigint(20)日期否postervarchar(20)用户否commenttext评论内容否mailvarchar(60)电子邮件否urlvarchar(75)URL地址否ipvarchar(128)IP地址否hideenu
33、m('n','y')是否隐藏否表4.3说说(blog_link)表名称类型说明是否为空备注idint(11)说说编号否主键contenttext内容否authorint(10)作者否datebigint(20)日期否replynummediumint(8)回复数否表4.4相册(blog_ kl_album)表名称类型说明是否为空备注idint(10)相册编号否主键truenamevarchar(255)真实名称否filenamevarchar(255)上传名称否descriptiontext描述否albumvarchar(255)相簿否addtimeint(10
34、)时间否表4.5设置(blog_options)表名称类型说明是否为空备注option_idint(11)设置编号否主键option_namevarchar(255)设置名称否option_valuelongtext值否第5章 系统实现5.1系统主要功能后台代码5.1.1会员登录用户和管理员可以通过此模块登录到博客后台管理系统。博客登录页面如图5-1。图5-1- 登录页面调用UserController.class.php登录方法:public function login()代码如下:public function login() $email = $_POST'email'
35、 $password = md5($_POST'password'); $m=M("user"); $result = $m->where("email = '$email' AND password = '$password' AND status = 0")->find(); if($result>0) $this->success("登陆成功!"); $_SESSION'muser'=$result'truename' $_S
36、ESSION'memail'=$result'email' $_SESSION'mid'=$result'id' $_SESSION'mlasttime'=$result'lasttime' $m->where("id = $result'id'")->setField('lasttime',time(); $_SESSION'mlastip'=$result'ip' $m->where("
37、;id=$result'id'")->setField('ip',$_SERVER"REMOTE_ADDR"); else $this->error("登陆失败!"); 5.1.2后台页面 管理员登录到后台页面如图5-2。 图5-2 管理员后台首页5.2系统前台代码5.2.1前台页面博客前台页面分为四个部分,头部,尾部,中间日志输出以及侧栏功能模块。页面如图5-4,5-5图5-4前台首页图图5-5前台论坛图5.3系统测试5.3.1用户修改密码用户名输入有误时系统提示如图5-6图5-6修改密码图用户密码
38、错误时如图5-7图5-7用户名密码错误图5.3.2添加日志用户添加日志时如果没有输入标题,系统会提示错误如图5-8图5-8添加日志错误示图5.4系统配置服务器端:Win 10服务器,Apache服务程序,MySQL数据库以及Zend Studio开发工具。Zend Studio是Zend Technologies开发的PHP语言,优点是可以快速代码开发与配置本地和远程调试器,开发效率很高。MySQL是一个精巧的SQL数据库管理系统,它具有强大的功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,为建立基于数据库的动态网站提供了强大动力。因此选择Mysql数据库作为后台数据库。Apac
39、he是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用。综上所述,系统选用Win 10 、Apache、Mysql、Zend Studio为软件配置方案。总 结本系统开发的目的是提供一种个人文章发表、交流和展现的平台。系统继承和发扬了目前网络上比较流行的博客系统的特点,实现了较为完整的个人博客系统的各项功能,包括用户登录和退出;日志的添加、浏览和分页删除;图片的添加、分页浏览和删除,以及日志的分类管理和多元化的用户管理,强大的相册功能以及简易的模块设置功能等。 相比于现在流行的个人博客系统,本系统还拥有以下特点:界面简洁,操作方便,
40、界面美观实用,并且系统的后台管理功能相当强大,对于网站的大多属性都可以编辑修改,方便了管理员对系统的管理和设置。完成这个系统,我得到了很大的锻炼,从系统相关技术的资料搜集和学习,网站的可行性分析,需求分析,到架构设计,数据库设计,详细设计,再到具体的编码和开发、辅助工具的使用,全是在导师的指导和同班同学的帮助下由个人完成的,它涉及到了软件工程的方方面面。在之前所学知识的基础上,这次毕业设计让我对开发一个工程有了更为深刻的认识。在系统的设计和开发过程中,我不断学习新的软件工程知识和开发技术,极大的高了我的编程水平和系统开发能力。通过对PHP动态网站相关知识的学习,使我对PHP的开发模式有了全新的
41、认识,深刻感觉到自己知识的不足,使得自己查阅各种资料并学习,现在已经能够比熟练和灵活的运用这些技术。通过本次毕业设计,我学到了很多东西,例如:编程规范,PHP技术等。这次毕业设计是对我大学三年所学知识的一次综合应用,让我认识到了自己的不足,并不断的加强改进。在系统不断的完善改进中,我学到了很多新的知识,也懂得了很多。这使我对自己的未来充满了信心。参考文献1 甘朝松,夏容.酒店管理系统的设计与实现J.电脑知识与技术,2013,21(2):13-142 彭伟民,唐平,易珺.基于需求的酒店管理系统的建模与实现J.微机发展 2012,18(4):45-46 3 李宇.JavaScript网页
42、特效实例解析M.机械工业出版社,2013.44 王晴.管理信息系统在酒店管理中的应用研究J.科技创新导报,2013,22(4)33-355 仲进平.PHP4+MySQL网络开发技术M.人民邮电出版社,2012.26 杨宇.PHP典型模块与项目实战大全M.清华大学出版社,2012.1致 谢论文即将完成之际,我谨向两年多来在工作和学习中给予我帮助的老师和同学们致以诚挚的谢意!首先最要感谢的是我的导师王桂凤老师,他对我的毕业设计始终给以密切的关注,在他的严格要求和精心指导下,我得以顺利的完成。他严谨的治学态度和渊博的专业知识给我留下了深刻的印象。我为能有这样一位导师而自豪!她经常关心我的学习与工作,并对我进行论文研究和论文的编写工作提出了宝贵的意见与建议。