一、博客功能概述

本博客系统基于PHP+MySQL建立,实现的功能包括文章的添加、修改,文章评论,文章分类管理以及用户后台登陆。

二、数据库设计

本博客系统需要一个数据库,建立4个数据表,分别是:

categories:id/cat用于保存文章分类

entries:id/cat_id/dateposted/subject/body保存文章,同时记录文章分类,发布期

comments:id/blog_id/dateposted/name/comment保存文章的评论,评论对应的文章

logins:id/username/password保存用户数据

前三个表可以通过id,cat_id,blog_id很好的将文章、评论、分类联系到一起,同时这样的数据库设计便于文章的分类修改和管理。

三、脚本框架

博客所需的脚本如下:

config.php用于记录博客的名称和作者以及博客部署跟目录

dbconnect.php用于数据库连接

header.php包含config.php和dbconnect.php两个脚本,是页面的头部

footer.php博客页面的页脚,用于版权信息的现实

index.php博客主体页面,包含header.php和footer.php,执行主要的脚本工作

viewentry.php博客文章的浏览页面,通过参数查看不同文章

viewcat.php文章分类浏览页面,通过参数浏览不同分类的文章

addentry.php文章添加页面

addcat.php文章分类添加页面

update.php文章修改页面,通过传递不同参数进行不同文章的修改

login.php用户登录

logout.php用户注销

四、重要脚步说明

dbconnect.php

这个脚本用于数据库连接,在每个页面中都要用到,需要注意的是在这个脚步头部添加如下两句:

session_start();//开始会话

ob_start();//产生cookie,以便后边的使用header()函数

header.php

这里的头部显示信息时候需要判断用户是否登录,如果登录则显示文章添加和分类添加以及注销,如果没有登录,那么只显示登录链接。

index.php

默认数据库中的第一篇文章为首页显示的文章。显示文章,文章分类,评论,以及发表评论的提交表单。

如果要是显示的评论最多为5个,可以在查找数据库时候按照评论时间倒序ORDER BY dateposted排列然后限制LIMIT 5表示取出五条评论。

viewentry.php

与index.php类似,不同的是需要进行参数的处理,并且要防止URL攻击,如果出现异常请求,直接header()转移到首页。

update.php

在用户登录后每篇文章显示编辑链接以便转至update.php页面进行修改,修改的文章用传递的参数表示第几篇,如果用户没用登录,那么在请求本页面时候跳转到首页。

login.php

如果用户名、密码正确,那么在会话中注册username和password变量。

logout.php

主要脚步是以下两行:

session_start()

session_destroy();

然后转到首页。

五、后期处理

博客总体做完之后需要对博客脚步进行细节处理,主要包括防SQL注入攻击处理(即引号的转义,单引号为'双引号为&quot),防止留言包含JavaScript,进行尖括号替换(<和>),添加评论时输入验证码,防止恶意留言。

php mysql 博客_基于PHP+MySQL的个人博客系统相关推荐

  1. 基于ssm的个人博客_基于 CentOS7 搭建 WordPress 个人博客

    1.准备 LNMP 环境 LNMP 是 Linux.Nginx.MySQL 和 PHP 的缩写,是 WordPress 博客系统依赖的基础运行环境.我们先来准备 LNMP 环境 1.1.安装 Ngin ...

  2. sphinx mysql存储引擎_基于Sphinx+MySQL的千万级数据全文检索(搜索引擎)架构设计...

    Sphinx,单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级).Sphinx创建索引的速度为:创建100万条记录的索引只需3-4分钟,创建1000万条记录的索引可以在5 ...

  3. mysql新闻发布_基于PHP+mysql实现新闻发布系统的开发

    新闻发布系统 1. 系统简介 一个简单的新闻系统,包含了四个功能,增删改查,利用PHP语言,结合了MySQL数据库,开发工具用的是Dreamweaver. 2.数据库设计 -- 数据库: `newsd ...

  4. jsp mysql 推荐算法_基于jsp+mysql+Spring+mybatis的SSM协同过滤音乐推荐管理系统(个性化推荐)...

    运行环境: 最好是java jdk 1.8,我们在这个平台上运行的.其他版本理论上也可以. IDE环境: Eclipse,Myeclipse,IDEA都可以 tomcat环境: 最好是Tomcat 7 ...

  5. 基于vb的mysql管理系统代码_基于VB+MySQL的简单图书管理系统

    代码片段和文件信息 属性            大小     日期    时间   名称 ----------- ---------  ---------- -----  ---- 文件        ...

  6. TIA博途_基于SCL语言制作模拟量输入输出全局库的具体方法

    TIA博途_基于SCL语言制作模拟量输入输出全局库的具体方法 一. 模拟量输入块:创建FB,定义块的接口,如下图所示: 程序中包含了高报警,低报警,一般上位机报警需要这个变量. 极性选择,适合更广的应 ...

  7. Java毕业设计_基于智能判分的英语在线考试系统

    基于智能判分的英语在线考试系统 基于智能判分的英语在线考试系统mysql数据库创建语句 基于智能判分的英语在线考试系统oracle数据库创建语句 基于智能判分的英语在线考试系统sqlserver数据库 ...

  8. Java毕业设计_基于spring的一汽大众4s店汽车销售系统的设计与实现

    基于spring的一汽大众4s店汽车销售系统的设计与实现 基于spring的一汽大众4s店汽车销售系统的设计与实现mysql数据库创建语句 基于spring的一汽大众4s店汽车销售系统的设计与实现or ...

  9. mysql简易购物车系统_基于PHP+Mysql简单实现了图书购物车系统的实例详解

    基于PHP+Mysql简单实现了图书购物车系统的实例详解,购物车,这是,页面,简单,图书 基于PHP+Mysql简单实现了图书购物车系统的实例详解 易采站长站,站长之家为您整理了基于PHP+Mysql ...

  10. sqlsugar对mysql效率高_基于.Net Core 2.0 + SqlSugar ORM + MySql快速实现网站开发

    .Net Core 2.0 (以下简称Core)正式版已经发布有一段时间了, 博主也第一时间尝鲜了, 相比Core 1.0和1.1类库支持方面提高了不少, 开发起来也方便快捷很多了. 废话不多说了, ...

最新文章

  1. linux python cpu温度,linux-raspbian系统下编写python脚本显示树莓派的当前cpu温度、使用率、内存和硬盘信息...
  2. 利用python进行数据分析 英文-如何学习和评价《利用python进行数据分析》这本书?...
  3. python轮胎_如何用数据分析方法剖析途虎轮胎数据
  4. python if 跳出_Python保留字简单释义
  5. 电脑二维码怎么扫描_扫描模组方案是如何满足多种应用场景需求?
  6. 计算机程序的思维逻辑 (47) - 堆和PriorityQueue的应用
  7. mongoDb 给表添加+ 删除字段
  8. 用户体验的13条金科玉律
  9. 力扣题目系列:290. 单词规律
  10. 如何动态确认每个输入的值都符合设定域
  11. leetcode最小面积_LeetCode 题解 |力扣杯 LCP 13.寻宝
  12. 【线代】相似矩阵中特征根的求法:特征方程、一般方程为什么求得的特征根含义不同?
  13. 爬虫取中间文本_【实战No.2】1小时打造你自己的网络爬虫
  14. 【计算机网络】数据链路层 : 后退 N 帧协议 GBN ( 滑动窗口 | 发送窗口长度 | “发送方“ 累计确认、超时机制 | “接收方“ 按序接收、确认帧发送机制 | 计算示例 )★
  15. 毕业论文公式居中标号靠右
  16. wargame v2.1 Web Wrtteup By Assassin
  17. python中random模块
  18. gitlab-ci添加安卓项目构建流程
  19. Android13 wifi状态问题分析
  20. 推荐5款好用的固定资产管理系统

热门文章

  1. 4G内存适合装哪个版本matlab,4G内存装win7 32位还是64位|单条4G内存选32位还是64位系统性能实测...
  2. 解决问题:failed to lazily initialize a collection of role异常解决
  3. 马哥教育42期第四周作业
  4. 《勿忘初心,勿忘前行》——2016年度总结
  5. 专业解读:从央行征信系统看你的哪些行为会影响你的信用
  6. 小满 前端埋点SDK 带你 从0 开发 并且发布npm
  7. 关于telnet逛bbs论坛
  8. fullpage.js版本3.0.9报错问题(licenseKey)
  9. fluent入门学习(一):三维卡门涡街算例
  10. mysql查询区分英文大小写_Mysql查询英文如何严格区分大小写?