极简语录永久存储系统教程:不用数据库,不丢数据

1次阅读
没有评论

执迷者收藏语录 | 直击内心·引人深思

很多朋友在做个人语录站、金句收集站时,一开始都会用 LocalStorage 来存储数据。
但这有个致命缺点:换个浏览器、清个缓存,数据全没了

极简语录永久存储系统教程:不用数据库,不丢数据

为了让“本站收藏语录”真正成为一个永久存档系统,我做了一个极简改造:

✅ 不用 MySQL
✅ 不用复杂后端框架
✅ 数据 100% 掌控在自己手里
✅ 换设备、清缓存,收藏永不丢失

一、最终效果预览

  • 打开网页,自动从服务器加载语录
  • 点击“上传语录”,直接写入服务器文件
  • 点击“收藏”,服务器记录收藏状态
  • 刷新 / 换设备,数据永不丢失

二、文件结构设计

我们只用 两个文件,放在 WordPress 主题的 pages 目录下即可:

text

/wp-content/themes/wordpress-theme-puock-master/pages/
├── quete-api.php      ← 主程序(PHP + HTML + JS)
└── quetes.json        ← 数据库(纯文本)

👉 没有数据库,却胜似数据库


三、部署实操步骤

Step 1:准备文件

新建 quete-api.php,把下面的完整代码复制进去。
新建一个空文件 quetes.json(内容留空即可)。

Step 2:上传到服务器

通过 FTP 或主机面板上传这两个文件到:
/wp-content/themes/wordpress-theme-puock-master/pages/

Step 3:设置写入权限(非常关键)

因为 PHP 需要向 quetes.json 写入数据,必须给它写权限
在文件管理器中:

  • 右键 quetes.json
  • 权限设置为 666
  • 或执行命令:chmod 666 quetes.json

⚠️ 如果忘了这一步,语录会“上传失败”且没有任何明显报错。

Step 4:初始化数据

在浏览器访问:
https://你的域名/wp-content/themes/wordpress-theme-puock-master/pages/quete-api.php

第一次访问时,PHP 会自动检测:
如果 quetes.json 是空的,自动写入 8 条默认语录(王阳明、庄子、尼采等)。


四、完整代码(quete-api.php)

将以下代码完整复制到 quete-api.php 中:略

五、核心原理解析

1️⃣ 数据存在哪里?

所有数据都在 quetes.json 这个纯文本文件里:

json

{
  "quotes": [
    {
      "id": "q_650a...",
      "text": "你未看此花时,此花与汝心同归于寂",
      "author": "王阳明",
      "time": "2026-01-20 12:00"
    }
  ],
  "favorites": [
    { "id": "q_650a...", "text": "...", "author": "..." }
  ]
}
  • quotes:所有语录列表
  • favorites:用户收藏的语录(完整对象)

2️⃣ 前端如何通信?

以前用 localStorage.setItem(...),现在改为向 PHP 发送请求:

3️⃣ PHP 在背后做了什么?

PHP 只做三件事:

动作 方法
读数据 file_get_contents('quetes.json')
写数据 file_put_contents('quetes.json', $json)
返回 JSON echo json_encode(...)

没有任何数据库,完全基于文件读写,简单、稳定、无需额外配置


六、功能测试清单

部署完成后,请逐项测试:

✅ 页面能正常打开,背景视频播放
✅ 默认 8 条语录自动出现
✅ 点击“随机刷新”可以切换语录
✅ 点击“收藏”按钮,按钮变红,收藏数 +1
✅ 刷新页面,收藏状态依然存在
✅ 点击“我的收藏”,弹出窗口显示已收藏的语录
✅ 在收藏弹窗中点击某条语录,主界面切换到该语录
✅ 在收藏弹窗中删除某条,收藏数相应减少
✅ 在底部表单输入新语录并提交,顶部总语录数增加,新语录出现在列表中
✅ 换一台设备或清空浏览器缓存后重新访问,数据依然存在(因为数据存储在服务器)

正文完
 0
评论(没有评论)