源代码地址: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制作自己的一个个人博客网站的更多相关文章

  1. 【实战】如何通过html+css+mysql+php来快速的制作动态网页(以制作一个博客网站为列)

    一.开发环境的搭建 (1)apache+php+mysql环境搭建 因为要用apache来做服务器,mysql作为数据库来存储数据,php来写代码以此实现网页与数据库的交互数据,所以需要下载上述软件, ...

  2. 基于SpringBoot从零构建博客网站 - 技术选型和整合开发环境

    技术选型和整合开发环境 1.技术选型 博客网站是基于SpringBoot整合其它模块而开发的,那么每个模块选择的技术如下: SpringBoot版本选择目前较新的2.1.1.RELEASE版本 持久化 ...

  3. 使用vue全家桶制作博客网站

    前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue.vue-router.vuex.v ...

  4. 转载: 使用vue全家桶制作博客网站 HTML5 移动网站制作的好教程

    使用vue全家桶制作博客网站   前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue. ...

  5. 前端设计师也有必要学习seo,推荐一个seo博客

    做前端设计师有一段时间了,现在越来越觉得作为一个前端设计师,必须要懂一些seo的知识. 因为公司的seo们,总是在网站做好以后,提出各种各样的网站修改的需求. 如果前端设计师,能够了解一些基本的seo ...

  6. 没学过CSS等前端的我,也想美化一下自己的博客

    随便说几句: 自己一直学的都是 C++和 Java 以及 Python语言,根本不懂高大上的 CSS 和 著名的 HTML5.感觉那些能自己设计那么漂亮的博客的朋友都好厉害.可以自己加上博客公告栏的小 ...

  7. 利用Metaweblog技术的API接口同步到多个博客网站(详细)

    很早就有这个想法:自己有时候会用到多个博客,有些博客在一个网站上写完之后,要同步到其他博客网站,自己只能复制粘贴,感觉特别没意思,复制粘贴的麻木了.一直在想有哪些技术能实现一次写博,多站同步.最近网上 ...

  8. android旋转动画和平移动画具体解释,补充说一下假设制作gif动画放到csdn博客上

    先上效果图: 我这里用的是GifCam来制作的gif动画,能够在http://download.csdn.net/detail/baidu_nod/7628461下载, 制作过程是先起一个模拟器,然后 ...

  9. MySQL Optimizer Tracemy 与 logmnr:MySQL binlog logmnr----MYSQL 邱伟胜 专家博客

    http://www.noodba.com/ http://www.yhddba.com/?tag=mylogmnr https://github.com/noodba

随机推荐

  1. 通过配置tomcat实现项目免部署

    对于一些比较大的项目,比如说使用了EXTJS这种重量级UI框架的项目,在部署的时候,eclipse会卡崩的,所以可以通过配置tomcat来实现免部署,直接运行即可: 首先找到tomcat的localh ...

  2. yii2.0 集成/引入第三方sdk

    首先下载自己要使用的sdk包放到vendor文件夹下面:我以接入ping++为例子如下: 然后在入口文件出引入文件的配置文件: 下面就是在控制器使用了: 下面就可以根据自己要使用的的文件以及方法正常调 ...

  3. Python3 venv 创建虚拟环境

    简介 Python3.3以上的版本通过venv模块原生支持虚拟环境,可以代替Python之前的virtualenv. 该venv模块提供了创建轻量级"虚拟环境",提供与系统Pyth ...

  4. compare.go

    package clientv3 import (     pb "github.com/coreos/etcd/etcdserver/etcdserverpb" ) type C ...

  5. bzoj 3126 单调队列优化dp

    能转移的最左是其左边完整区间的最右左端点,最右是能覆盖它的最左左端点-1 #pragma GCC optimize ("O3") #include<cstdio> #i ...

  6. mfc启动画面

    目标 用一张位图来作为启动画面,在进入程序时显示. 策略 在应用程序类的I n i t I n s t a n c e ()函数中,在最早时刻创建启动窗口.启动窗口用一个位图类显示在普通窗口中. 步骤 ...

  7. i春秋——Misc之百度杯

    今天心里很是不开森,想想往日何必那么努力呢?不如你的比比皆是,可是人家就是因为有关系,你又能怎样呢? 你所有应该有的都被打翻了,别灰心,至少你曾经努力过! 愿我未来的学弟学妹们都能一直开开心心的过好每 ...

  8. 离线安装mysql数据库

    开源数据库mysql,目前使用很广泛.作为程序员开发项目时,与关系型数据库打交道最多的估计也是mysql了.那么本文首先讲解如何离线安装mysql数据库,毕竟有很多项目部署在内网. 1.离线安装 本人 ...

  9. volitale、synchronized、RetreenLock区别

    synchronized和RetreenLock锁区别 1.synchronized是java关键字,RetreenLock是个java类 2.synchronized无法获取锁状态,Lock可以判断 ...

  10. pins-模块内的代码及资源隔离方案

    随着项目的不断迭代,复杂的业务模块及项目自身的基础技术组件迅速扩张,以往基于单个模块的项目往往显得过于臃肿.代码目录结构,包名混乱,代码模块职责不清晰,耦合度高,不便维护.基础公共组件没有抽取并剥离干 ...