基于PHP的博客系统开发报告.doc
《基于PHP的博客系统开发报告.doc》由会员分享,可在线阅读,更多相关《基于PHP的博客系统开发报告.doc(20页珍藏版)》请在沃文网上搜索。
1、目录网站开发设计报告书1博客系统3一、课程设计目的3二、课程设计内容31课程设计简介32设计说明32.1系统设计32.2数据库设计73设计流程94实现功能105详细设计105.1设计技术和工具105.2页面预览及部分代码10三、课程设计总结20博客系统 一、 课程设计目的通过课程设计,检验我们学习的情况,同时也是增强我们锻炼的机会。通过实实在在的演练,使我们能清楚自己的掌握语言的程度、以及正确的衡量自己的水平,以达到学以致用的目的。二、 课程设计内容1课程设计简介博客是Webblog的译文,同时他也可以译作(“网络日志”,“网志”等),是一种互联网平台上的个人信息交流中心。设计本系统的目的主要
2、是为了在网络上能够构建一片自己的思想空间,同时也为了满足网友之间相互交流、相互学习的目的,通过所学的知识进行具体的实践,不仅能检查自己所学知识的情况,还可以在实践当中发现自己的不足之处。2设计说明设计模块包括两个模块:系统设计和数据库设计,系统设计模块,主要是设计博客系统的前台页面和博客网后台也面。整个系统采用PHP语言编写,页面布局使用了div+css的布局方式,数据库构建采用的是MySQL。页面设计使用的html以及Javascript。2.1系统设计2.1.1系统功能结构:博客系统主要分为前台和后台,其中根据其博客其前台的特点,可以将其分为博主信息、网络日历、文章查询等部分,各个部分及其
3、功能模块如下图所示:根据博客网后台的特点,可以将其分为用户设置、个人相册管理、博客文章管理、博主信息修改等部分,其中各个部分及其包括的具体功能模块如下图所示:2.1.2系统流程图为了更加清晰地表达业务功能模块,给出博客网的系统流程图,对于不同的角色,其各自的权限和功能也不相同。包括面向用户的客户端和面向系统管理员的流程图。l 面向客户端流程图如下图所示:l 面向系统管理员的流程图如下图所示:2.1.3开发环境本博客系统的开发坏境:u 服务器端:l 操作系统:windowsXPl Web服务器:Apache2.2.8l 数据库:MySql5.5l 浏览器:Google Chromel 分辨率:1
4、024x768u 客户端:l 浏览器:Google Chromel 分辨率:1024x7682.2数据库设计2.21数据库需求分析随着科学技术的不断发展,网络现在已经成为我们学习和生活中的一部分。网络的迅速发展,给我们的生活带来了巨大的改变。大部分人现在已经离不开网络。在网络中,我们可以构建一个个性化的博客,可以充分展示自己的思想,表达自己的才能,抒发自己的情感。网友也可以根据主题发表自己的意见和看法,与博主进行探讨、交流,这样就可以不断的提高自己。2.2.2数据概念设计根据以上对系统做的需求分析和系统设计,得出系统中使用的数据库实体分别为用户信息实体、博客文章信息实体。 用户信息实体用户信息
5、实体包括密码、E-mail、用户名、个性签名、个人介绍、管理员级别。 博客文章信息实体博客文章信息实体包括文章题目、文章内容、文章发表时间、文章浏览次数属性。2.2.4数据库逻辑结构设计 详细数据库设计本博客系统包含有四个数据表n tb_article(文章信息表)文章信息表主要是保存发表的文章、文章发表的时间、浏览的次数等。 表tb_article结构字段名称 数据类型 是否为空默认值说明articleidint(10)否Null文章IDcontentlongtext否Null文章内容authorVarchar(20)否Null文章作者nowdatatime否Null文章发表的日期title
6、Varchar(200)否Null文章标题 btimeInt(10)否Null文章浏览的次数n tb_filecomment(文章评论信息表)文章评论信息表主要是用于保存注册用户评论的信息、评论的时间等信息。 表tb_filecomment结构字段名称 数据类型 是否为空默认值说明commentidInt(4)否Null评论ID号 articleidInt(4)否Null文章ID usernameVarchar(20)否Null用户名 contentVarchar(240)否Null文章内容datetimedatetime否Null文章评论时间n tb_tpsc()图片上传表主要是保存博主上传
7、的图片信息。 表tb_tpsc结构字段名称 数据类型 是否为空默认值说明idInt(10)否Null图片IDimgurlVarchar(50)否Null图片链接地址AutuorVarchar(20)否Null图片上传者ScsjInt(20)否Null图片上传的时间n tb_user(用户信息表)用户信息表主要是保存用户的ID、用户名、用户密码、Email、用户个人介绍、个性签名等信息。 表tb_user结构字段名称 数据类型 是否为空默认值说明useridInt(20)否Null用户ID usernameVarchar(40)否Null用户名 UserpswVarchar(40)否Null用户
8、密码 EmailVarchar(100)否Null用户E-mail地址 usericoVarchar(50)否Null用户头像 usersignVarchar(200)是Null用户签名信息 userintroducemediumtext是Null用户个人介绍 powerInt(1)否Null权限3设计流程本博客系统按照一般系统的开发流程进行设计,首先进行需求分析找出系统中的用例,其次进行数据库设计,设计系统所需的表,再次是设计系统的前台页面,后台页面。最后进行的是测试,验证系统是否符合预期设计,同时也可以根据测试的结果进行一些修改。4实现功能此博客系统主要实现网站建设者与访问者之间的相互交流
9、,通过本博客系统平台实现用户和用户之间信息交流。l 博主通过发表文章,表达自己的想法和观点、以及自己的一些生活感悟等,实现博主和博主之间相互交流的目的。l 博主可以上传自己喜欢的图片到自己的相册,主页将会显示博主最近上传的图片,同时,也可以对自己相册的图片进行删除。l 未注册用户可以浏览博主发表的文章、图片等,但是不能进行评论,只有注册用户才可以对博主发表的文章。l 博主发表的文章,按用户的浏览的次数进行排序。l 博主可以对自己发表的文章进行修改、删除操作。l 超级管理员可以对非法的文章、图片进行删除操作。l 博主可以修改自己的基本信息,如密码、邮箱等、同时也可以查看别人的基本信息。5详细设计
10、本系统是采用面向对象的方法进行设计的,主要的用例有超级管理员和一般用户。5.1设计技术和工具l 设计技术 在登录模块、注册模块,主要采用了Ajax技术,来实现用户登录信息的提交到数据库。 密码是采用的是MD5加密技术,使得用户的安全性得到了保证。 验证码采用的是Javascript脚本来实现的,通过刷新每次产生不同的随机数。 图片的随时更新,主要是利用Jquery来实现的。 发表文章主要是使用了一个网络的一个在线文本编辑器(ckeditor)。 整个网站全部页面都静态化,有利于浏览器检索和网站的保密性。 l 工具本系统的实现主要采用的是最简单的文本编辑器Editplus 、zend studi
11、o、phpmyAdmin、vim、dreamweaver、powerdesigner5.2页面预览及部分代码1.登录页面:登录页面的验证码部分,采用的是Javascript脚本来生随机数,源码如下:javascript部分: /-生成随机数- var num1=Math.round(Math.random()*100000000); var num=num1.toString().substr(0,4); document.write(); register.yzm1.value=num; function code_1()var num1=Math.round(Math.random()*1
12、00000000); var num=num1.toString().substr(0,4); document.code.src=yzm.php?num=+num; register.yzm1.value=num;验证码的背景图片是采用PHP中的GD库,来生成图片。php部分:?php/利用php的GD库生成验证码图片$num=$_GETnum;header(Content-type:image/PNG);/$im=imagecreate(80,40);$im=imagecreate(60,20); /生成原始图片imagefill($im,0,0,imagecolorallocate($i
13、m,200,200,200);imagestring($im,5,10,3,substr($num,0,1),imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255);imagestring($im,5,20,3,substr($num,1,1),imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255);imagestring($im,5,30,3,substr($num,2,1),imagecolorallocate($im,rand(0,255),rand(0,255),
14、rand(0,255);imagestring($im,5,40,3,substr($num,3,1),imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255);for($i=0;$i2.博客系统主页博主的文章根据点击的次数进行排序,实现这一部分的源码如下:query($query);if($result)if($result-num_rows0)while($rows=$result-fetch_array()$articleid=$rowsarticleid; $one=explode(?,$_SERVERREQUEST_URI)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 PHP 博客 系统 开发 报告
