php网站内容管理系统(编程的世界向人类乃至整个世界习得许多本质的东西)

优采云 发布时间: 2022-04-05 07:08

  php网站内容管理系统(编程的世界向人类乃至整个世界习得许多本质的东西)

  原文链接:

  基于PHP和HTML5的内容管理系统——探索艺术、科技、国学之美/陈帅华

  基本功能:文件系统添加目录、上传文件、删除文件;添加 文章 并修改 文章。

  

  写在前面:

  所有的发明和创造都受到世界本质的启发。编程世界从人类和全世界学到了很多本质的东西,比如“继承”、“原型链”、“粒子群优化算法”、“遗传算法”、“神经网络算法”、“人工智能”等等。在。都是在人类对现实世界本质的探索之后得到提炼和升华的。完成一个站后台管理的功能后,指尖从键盘上移开,惯性攻击,所有的编程术语、语法、数据类型都在脑海中挥之不去。

  目前后台管理系统只有目录和文件的创建和删除,同时新建文章对应的目录和文件等基本功能。我发现添加和删除是最简单粗暴的事情,而修改(万一误删,删除操作其实还是修改状态更好)和查询是比较复杂的数据库操作。将这与生相比:一个人的生(增)死(减)只是一瞬间的事情,非常简单粗暴,生死之间的所有生命境界的变化,能力的获得,不断的自我——改进甚至创造新的生活(修改)和自我反省和经验的积累和回顾(询问)需要我们一生来完成。而有的人可能一生只用一次加(生)删(死)的操作,一生无所事事,不求上进,顺其自然,麻痹自己,不知自己怎么办。你我要如何度过这美好的生活?登录验证首先要说的是登录记录不是登录的路!首次登录需要输入密码。使用 SESSION 身份验证。每次打开网站都会启动一个会话,关闭浏览器后会话结束。在此期间,刷新页面时无需再次输入密码。下次打开浏览器输入网址时,需要再次输入密码。

  

  鉴于上面提到的需求,从打开网站到关闭浏览器始终处于登录状态,所以使用session来实现记住登录状态的功能。

  当我进入页面时,首先启动会话会话。

  session_start(); //PHP中的函数,用于启动一次会话

  下面是关于$_SESSION的一些常用函数和操作方法

  $_SESSION[''user] = 'leo'; //在本次会话上存储信息

session_destroy(); //清楚所有会话信息

unset($_SESSION['user']); //清楚某一个已存储的会话信息

  查询文章需要在进入后台后列出所有数据库中的文章。至于返回哪些信息,取决于需求。这里需要前端和后端的交互。我只使用原生的 Ajax 来实现它。

  function getArticle(start, step){

var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function(){

if(xhr.status == 200 && xhr.readyState == 4){

console.log(xhr.response);

}

}

xhr.open('GET', './getArticle.php?start='+start+'&step='+step, true); //该请求地址为虚构地址。

xhr.send(null);

}

  我写了一个获取文章的函数,传入的参数有两个,分别是开始数(start)和每次返回多少数据的步长(step);对于我使用永昌GET请求的查询,我会使用POST请求进行更危险的操作,例如添加、删除和修改。

  将文章查询保存到文章后,可能需要对文章进行修改完善,点击文章标题打开侧边的编辑器,保存后保存编辑 文章 ,后台PHP程序会将文章写入对应的.md文件,编辑器是自己编写的,使用Markdown语法,所有网站的文章页面都会由后台 PHP 程序在用户请求时将 .md 文件转换为 html 标签。

  

  function saveArticle(title,tag,.......){ //其他参数省略

var _formData = new FormData();

_formData.append('title',title);

_formData.append('tag',tag);

//........省略传入的其他参数

var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function(){

if(xhr.status == 200 && xhr.readyState == 4){

console.log(xhr.response);

}

}

xhr.open('POST', './saveArticle.php', true); //该请求地址为虚构地址。

xhr.send(_formData);

}

  还要创建一个使用 POST 请求将 文章 数据发送到后台的 saveArticle 函数。这里使用了一个新的 API:FormData,使用起来非常简单。只需调用实例化对象的append()方法,传入两个参数,一个是键名,一个是对应的值,然后传入Ajax send方法,在后台接收POST数据。

  新的文章弹出界面采用Material Design品质设置风格。

  

  文件系统 ICON 查询返回的文件和目录结构信息。它需要以视觉形式区分不同的文件类型。我使用纯 CSS 设计了一些最常用的图标。

  

  最近,有一句话一直在我脑海里盘旋。忘了从哪里听来的,还是自己编的:每个人的能力都是无限的,但每个人的精力都是极其有限的。了解了这一点后,去探索你自己的。潜力,遇见更好的自己,但累了就停下来休息。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线