手机版

基于thinkPHP的校园博客设计 毕业论文

发布时间:2024-09-20   来源:未知    
字号:

图书分类号:

密级:

毕业设计(论文) 题目:基于thinkPHP的校园博客设计

学生姓名

班级

学院名称计算机与信息科学学院

专业名称计算机科学与技术

指导教师

学位论文原创性声明

本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标注。

本人完全意识到本声明的法律结果由本人承担。

论文作者签名:日期:年月日

学位论文版权协议书

本人完全了解关于收集、保存、使用学位论文的规定,即:本校学生在学习期间所完成的学位论文的知识产权归所拥有。有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

论文作者签名:导师签名:

日期:年月日日期:年月日

I

基于thinkPHP的校园博客设计

计算机与信息科学学院计算机科学与技术20**级

指导教师

摘要:本系统是使用thinkphp框架制作的校园博客网页,有前端和后台两个模块。本次设计还利用了Css+Div、Jquery、MySQL等技术和Dreamweaver、xampp、Navicat for MySQL 等软件,实现该网页前端博客展示、博客评论、搜索和后台的博客发布、用户信息的管理、修改、管理员操作等功能。完成网页的交互。

关键词:thinkphp;MySQL;Jquery;动态网页设计;博客

2

Abstract:This system is made using a framework thinkphp campus blog page, there are two front-end and back-end module.The design also makes use of Css + Div, Jquery, MySQL technology and Dreamweaver, xampp, Navicat for MySQL software, realize that the front page shows blog, blog comments, search and backstage blog publishing, management of user information, modify, administrator operations and other functions. Complete interactive web pages.

Key words:thinkphp; MySQL; Jquery; dynamic Webpage Webpage design; blog

3

1 研究背景

博客(Blogger)的出现,使我们在互联网世界,第一次有了知识积累和文化指向。使人类由粗放的数字化生存,过渡为个人化的精确的目录式生存。博客们将工作、生活和学习融为一体,通过博客日志(Blog),将日常的思想精华及时记录并发布,萃取并链接全球最有价值、最相关、最有意思的信息与资源。

校园博客是建立在校园网络中,学生之间的信息分享平台。同学梦通过校园博客这个平台,可以分享自己学习经验、文学创作和影片推荐等。把个人所好传播出去,传播知识和文化,供其他同学学习和欣赏,方便同学的学习交流,分享多一些快乐。在大学中同学都是在学习各类知识,正好利用这个特点建立校园博客,学习交流可以使同学在校园中学习了解到各方面的知识。

2 开发环境简介

为了方便系统的开发,由于自己安装Apache 服务器是件不容易,并且还需添加 MySQL、PHP 和 Perl等应用,更加困难。所有使用XAMPP,XAMPP。XAMPP 是一个易于安装且包含 MySQL、PHP 和 Perl 的 Apache。这样能更有效的提高系统开发都效率。

2.1 开发框架THINKPHP

3.2

ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。

ThinkPHP可以支持windows/Unix/Liunx等服务器环境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite以及PDO等多种数据库,ThinkPHP 框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。

2.2 MySQL数据库

MySQL 是一种关联数据库管理系统,MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择

4

MySQL 作为网站数据库。

在此项目中对MySQL的使用,通过Navicat for MySQL此软件来完成。Navicat for MySQL[1] 是一款强大的 MySQL 数据库管理和开发工具,对于新用户仍然易于学习。提供类似于 MySQL 的用管理界面工具,解放 PHP、J2EE 等程序员以及数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。

3 课题分析

3.1 博客结构分析

此网站为校园博客设计,使用THINKPHP框架来实现博客各项功能。首先要分析博客所需要的各项功能,前台有博客的显示、博客搜索、博客的评论,和后台管理的,普通用户的博客发布和本人信息的管理,管理员的对所有普通用户的个人信息、评论信息和博客信息的管理。

3.2 网页用户需求分析

此博客对不同的访问者有不同的权限:

●游客:只能对博客前台的已发布博客浏览,博客关键字搜索;

●普通用户:可以在博客下进行评论,发布博客和修改个人信息;

●管理员:除以上权限还可以对普通用户的博客进行修改;所有普通用户信息

修改、添加普通用户,评论信息修改。

4 网站总体设计

4.1 前台博客设计

前台网页是为了给每个访问者浏览的,一般没有任何权限设置。并且前台页面要提供访问者访问的方便,让访问者更加快捷的找到满足其需求的功能;同时也展示所有用户的浏览喜好。

●博客首页:此页面是展示所有最近发布的博客;

●博客版:此网页为各类型博客的版块;

5

●博客搜索:为了更方便找寻博客的功能;

●博客:当点击所需要访问的博客的展示页面;

●热门博客、博主其他博客:此为点击量大的部分博客,和你访问某一博客作

者其他博客,方便浏览;

●博客评论:在博客展示页面下方有用户对此博客的相互评论和提问回答

下图

4.2 后台博客设计

博客后台是针对注册过的用户提供的功能,后台提供对前台博客的发布,和用户个人的管理,并且有管理员对普通用户所有信息:博客、评论和个人信息的管理。

●注册、登录:注册和登录是实现后台必要功能;

●博客发布:每个用户可以发布自己编辑的博客;、

●用户信息:包含每个用户的博客中的昵名,博客空间名和性别等信息;

●修改密码:对已注册的用户个人的密码的更改;

●用户添加:此为管理员的权限,管理员自行添加新的普通用户;可以对所有

6

普通用户的用户信息进更改;超级管理员则可以对管理员也可以进行信息管理,并可以更改所有用户的权限;

●博客修改:此为管理员对普通用户已发表的博客进行查看和修改;超级管理

员则可以对管理员的博客进行管理;

●用户评论:此为管理员对前台所有博客评论进行查看和修改;超级管理员则

可以对管理员的评论进行更改;

下图4-2为后台博客的功能描述:

4.3 整体的架构

博客系统是使用THINKPHP3.2框架,在THINKPHP的基础上进行的设计和功能实现。而THINKPHP3.2是使用MVC的设计流程来实现网页的,MVC是模型(model)-视图(view)-控制器(controller),使用MVC的目的是将M和V的实现代码分

7

离,从而使同一个程序可以使用不同的表现形式。

●Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。

通常模型对象负责在数据库中存取数据。

●View(视图)是应用程序中处理数据显示的部分。

通常视图是依据模型数据创建的。

●Controller(控制器)是应用程序中处理用户交互的部分。

通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

下图4-3-1位MVC是模型关系:

5 数据库设计

5.1 创建数据库

此博客网站是使用MySQL数据库的图形化管理软件Navicat for MySQL后台数据库blog。根据对博客网站的需求分析和遇到的实际情况,建立的数据库blog 主要包含了一下几个数据表,分别为blog_blog(所有已发发布的博客信息)、

8

blog_ping(所有博客的评论信息)、blog_type(博客的分类)和blog_user(所有用户的信息)这些4张表。

(1)表blog_blog存储所有用户发布的博客信息,如表5-1所示。

表5-1 blog_blog表

字段名称数据类型宽度主键否必填字段说明id int 8 是是博客编号,自增blogname char 32 否是博客名称blog text 0 否是发布的博客信息userid int 8 否是博主的编号type int 8 否否博客的分类time int 10 否是博客发布的时间dian int 10 否是博客的浏览次数

(2)表blog_ping为所有的用户对每个博客的评论信息,如表5-2所示。

表5-2blog_ping表

字段名称数据类型宽度主键否必填字段说明id int 8 是是评论编号,自增thing text 0 否是博客评论信息blogid int 8 否是评论博客编号userid int 8 否是评论者编号pid int 8 否是评论的级别time int 16 否是评论发表时间

(3) 表blog_type为博客的的不同分类,如表5-3所示。

表5-3blog_type表

字段名称数据类型宽度主键否必填字段说明id int 8 是是分类编号,自增

9

name char 16 否是分类的名称

(4)表blog_user为所有注册用户、管理员和超级管理员的信息,如表5-4所

示。

表5.1 user表

数据类

宽度主键否必填字段说明

字段名称

id int 8 是是用户编号,自增username char 16 否是所有用户ID password char 16 否是用户密码sex char 8 否否用户性别name char 32 否否用户显示昵名blognam char 32 否否用户空间名did int 4 否是用户权限5.2 数据库E-R图

由于网站的功能是属于多个数据库相互联系,因此使用E-R图来表示功中实体间的关系。

下图为博客发布、评论发表、用户管理等E-R图5-2:

10

6 详细功能设计

6.1 前台评论功能

在每篇博客下用户都可以进行评论,每篇博客在加载时,也要同时加载所有对于该博客的评论。并且在每条评论下,还可以对该评论进行下一级的评论。在加载一篇博客的评论时,对所有的该篇评论进行无限级分类的操作,实现评论的分级。

功能实现流程图6-1所示,详细功能代码请看附录。

11

图6-1 用户评论流程图

6.2 后台更改信息功能

对于管理员有对所有普通用户的所有信息进行管理,如用户个人信息、所有博客信息和用户评论信息。可以对信息做不同的添加、删除、修改和查询的基本管理功能的操作。

以管理用户信息为例,功能实现流程图6-2所示,详细功能代码请看附录。

12

图6-2 用户评论流程图

该流程图是管理员对用户信息的修改和添加功能的实现。首先,在用户登录是会先判定是否有管理员权限,有管理员权限才能进行用户信息管理。其次,用户信息管理分为两块:第一为添加用户,添加用户只是向blog_user数据库添加用户的账号和密码信息;第二位修改用户信息,此功能用先读取原本用户已填写的用户信息,并显示出来,再在此基础上进行修改。

7 系统测试

在博客系统完成后,需要对该网站的每个功能进行测试。通过测试来确定每个功能是否完成了相应的效果,并对未达到理想效果的功能进行问题分析,从中找出问题所在并加以修改,修改后在测试直到达到正确结果为止。

7.1 网站页面的测试

网站页面样式的测试是最直观的,在运行博客系统每个功能时,测试网页样式的是否达到相应的样式效果,是否在测试功能时部分样式发生未设计中的变化。Jquery事件测试是否会正常执行,消除冒泡事件的发生。

13

基于thinkPHP的校园博客设计 毕业论文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
    ×
    二维码
    × 游客快捷下载通道(下载后可以自由复制和排版)
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    VIP包月下载
    特价:29 元/月 原价:99元
    低至 0.3 元/份 每月下载150
    全站内容免费自由复制
    注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
    × 常见问题(客服时间:周一到周五 9:30-18:00)