使用前端技术和MySQL+PHP制作自己的一个个人博客网站
源代码地址:https://github.com/YauCheun/BlogCode
我的博客网站地址:http://www.yublog.fun/
制作前景:
想拥有一个自己独自开发的一个小型博客网站,自己能发布博文管理博文。
目标:
了解 Web 开发过程(历史)
掌握基本的动态网站开发
培养 B/S 架构应用开发思维
锻炼 JavaScript jQuery AJAX
开发流程简介
了解了动态网站的概念过后,我们作为开发者更多想到的就是如何具体开发一个动态网站应用程序,有那些具体的工作,流程是怎样的?
正常情况下,我们大概会有如下几个阶段:
需求分析:分析我们这个应用程序到底要去做哪些功能,应对哪些业务。
原型设计:根据需求分析的结果规划应用程序的原型,可以理解为“打草稿”。
UI 设计:将“草稿”转换为设计稿,并提供相应的产物(设计稿、静态页面)。
技术选型:根据业务场景分别选择对应的技术栈(数据库技术栈、后端技术栈、前端技术栈),一般考虑的因素:人、业务。
数据库设计:根据需求和原型分析我们有哪些类型的数据需要存,从而得到我们数据库的基本结构。
项目架构设计:俗称搭架构,其中具体的操作主要就是制定项目规范约束、创建基本的项目结构、编写基础的公共模块代码和组织代码。
业务迭代开发:开发者的日常,基于项目架构(条条框框)下完成各项业务功能。
集中测试:将所有功能模块整合到一起过后,集中测试业务功能是否有 BUG,是否满足需求。
部署上线:从开发环境向生产环境转换,就是把应用部署到服务器上。
准备工作
1.数据库设计

2.项目配置文件
由于在接下来的开发过程中,肯定又一部分公共的成员,例如数据库名称,数据库主机,数据库用户名密码等,这些数据应该放到公共的地方,抽象成一个配置文件 config.php 放到项目根目录下。
这个配置文件采用定义常量的方式定义配置成员:
/**
* 数据库主机
*/
define('DB_HOST', '127.0.0.1');
/**
* 数据库用户名
*/
define('DB_USER', 'root');
/**
* 数据库密码
*/
define('DB_PASS', '111');
/**
* 数据库名称
*/
define('DB_NAME', '111');
做完了相关的准备工作好,首先编写好所有需要用到的静态页面,我这里用的是bootstrap的样式来写响应式的,把所有的页面都准备好之后然后开始编写后台的代码,
我这里后台是用PHP来写的,主要的功能有管理后台登录:即登录后具有session才能进入后台以及推出后清除当前的session;后台的仪表盘功能:用来显示此时有多少篇文章和以及评论等信息;后台文章管理功能:主要有对文章的编辑,删除以及批量删除;后台文章的新增:用的是百度的UEditor的插件,很容易就能上手使用;后台的评论管理功能:能够对评论删除以及批准和拒绝,这里用到了一个分页的插件jQuery Pagination,评论较多的话会分页;账户管理功能:当前账户能修改密码等。以下是做好的截图。

后台功能写完之后,下一步要做的就是把一些数据传给前台,然后前台拿到这些数据之后就把页面渲染出来,这里就要用到ajax,具体做法实在后台文件夹中建一个接口的文件夹,在里面用PHP代码写要获取的数据,然后在前台用ajax请求这个接口文件获取数据。然后把获取到的数据通过模板渲染到页面上,我的前台页面如下。

所有的源代码我都上传到GitHub上了,链接在下方
源代码地址:https://github.com/YauCheun/BlogCode
我的博客网站地址:http://www.yublog.fun/
使用前端技术和MySQL+PHP制作自己的一个个人博客网站的更多相关文章
- 【实战】如何通过html+css+mysql+php来快速的制作动态网页(以制作一个博客网站为列)
一.开发环境的搭建 (1)apache+php+mysql环境搭建 因为要用apache来做服务器,mysql作为数据库来存储数据,php来写代码以此实现网页与数据库的交互数据,所以需要下载上述软件, ...
- 基于SpringBoot从零构建博客网站 - 技术选型和整合开发环境
技术选型和整合开发环境 1.技术选型 博客网站是基于SpringBoot整合其它模块而开发的,那么每个模块选择的技术如下: SpringBoot版本选择目前较新的2.1.1.RELEASE版本 持久化 ...
- 使用vue全家桶制作博客网站
前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue.vue-router.vuex.v ...
- 转载: 使用vue全家桶制作博客网站 HTML5 移动网站制作的好教程
使用vue全家桶制作博客网站 前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue. ...
- 前端设计师也有必要学习seo,推荐一个seo博客
做前端设计师有一段时间了,现在越来越觉得作为一个前端设计师,必须要懂一些seo的知识. 因为公司的seo们,总是在网站做好以后,提出各种各样的网站修改的需求. 如果前端设计师,能够了解一些基本的seo ...
- 没学过CSS等前端的我,也想美化一下自己的博客
随便说几句: 自己一直学的都是 C++和 Java 以及 Python语言,根本不懂高大上的 CSS 和 著名的 HTML5.感觉那些能自己设计那么漂亮的博客的朋友都好厉害.可以自己加上博客公告栏的小 ...
- 利用Metaweblog技术的API接口同步到多个博客网站(详细)
很早就有这个想法:自己有时候会用到多个博客,有些博客在一个网站上写完之后,要同步到其他博客网站,自己只能复制粘贴,感觉特别没意思,复制粘贴的麻木了.一直在想有哪些技术能实现一次写博,多站同步.最近网上 ...
- android旋转动画和平移动画具体解释,补充说一下假设制作gif动画放到csdn博客上
先上效果图: 我这里用的是GifCam来制作的gif动画,能够在http://download.csdn.net/detail/baidu_nod/7628461下载, 制作过程是先起一个模拟器,然后 ...
- MySQL Optimizer Tracemy 与 logmnr:MySQL binlog logmnr----MYSQL 邱伟胜 专家博客
http://www.noodba.com/ http://www.yhddba.com/?tag=mylogmnr https://github.com/noodba
随机推荐
- 在Windows Server 2008 R2下搭建jsp环境(三)-Tomcat的下载安装
1.百度搜索"Tomcat官网",点击有标志的官网进入,准备下载官方正版Tomcat. 2.进入Tomcat官网之后,在左边我们看到,Tomcat的有6,7,8这三个最流行的版本, ...
- retry.go
package clientv3 import ( "github.com/coreos/etcd/etcdserver/api/v3rpc/rpctypes" p ...
- orcl数据库命令行怎么导入dmp格式的文件
2018-05-23 1.创建空间 以system的身份登陆orcl 打开SQL Window界面,输入以下命令create tablespace SGXC(表空间的名字)datafile 'D:/S ...
- 【爆料】-《西澳大学毕业证书》UWA一模一样原件
☞西澳大学毕业证书[微/Q:2544033233◆WeChat:CC6669834]UC毕业证书/联系人Alice[查看点击百度快照查看][留信网学历认证&博士&硕士&海归&a ...
- Android--app性能问题的总结(一)
一个应用程序的性能问题体现在很多方面,app的性能问题,很大程度上决定了使用app的用户量,如果正在使用app的过程中出现app崩溃.卡顿半天加载不出数据(跟网络也有一定的关系).用户请求事件半天获 ...
- python 编译源文件
背景 近期项目到了部署的阶段.由于项目后台和算法都是用Python "撸的",但是又不希望将源代码直接 "release" 到 “客户”哪里.于是开始思考... ...
- js模块化 javascript 模块化 闭包写法 闭包模块化写法
var main = main || {}; ; (function (main) { 'use strict'; //私有变量 var _s1 = 'Hello '; var _s2 = 'Worl ...
- subprocess实时获取结果和捕获错误
需要调用命令行来执行某些命令,主要是用 subprocess 实时获取结果和捕获错误,发现subprocess的很多坑. subprocess 普通获取结果方式,其需要命令完全执行才能返回结果: im ...
- GIS之家资源
分享资源之arcgis软件系列 arcgis10.0(arcgis desktop以及arcgis server):下载 arcgis10.1(arcgis desktop以及arcgis serve ...
- 泛微oa几个常用的js
泛微OA,常用JS 为满足一些简单需求,我从网上借鉴了大量的代码,其中几个是非常好用的. (1).取值判断 通过jQuery('#field1234').val()取字段的值,field1234对应字 ...