首页 前端开发 web应用

小陈资源 V1.0 文档

tts小陈 发布于 2026-08-10 14:23 更新于 2026-08-10 阅读 4 约 5,887 字 · 阅读 15 分钟
web应用 ·

小陈资源 V1.0 知识库文档

版本:V1.0 · 更新日期:2026-08-10 技术栈:原生 PHP 8 + MySQL 5.7+ · 无框架 · 无 Composer

目录

  1. 项目概述
  2. 快速开始
  3. 目录结构
  4. 数据库
  5. 前台功能
  6. 用户中心
  7. 后台管理
  8. 积分与经济系统
  9. 在线客服与站点配置
  10. 安全机制
  11. 常见问题 FAQ
  12. 二次开发指南
  13. 更新日志

1. 项目概述

小陈资源是一套完整的资源下载站程序,面向个人站长,覆盖「内容发布 → 用户下载 → 积分/高级版变现 → 营销拉新」的完整闭环。

  • 前台:分类浏览、全文检索、资源详情下载、评论互动、AI 问答、积分商城、抽奖活动
  • 用户中心:资料/安全、激活高级版、收藏、发布、AI 历史、评论、浏览历史、下载记录、积分
  • 后台:20 个管理模块,全部可视化配置

设计原则

  • 极简:原生 PHP,无框架依赖,一个站点一个目录
  • 本地优先:无外部 CDN 依赖(图标字体、静态资源全部本地化)
  • 自适应:扁平化多彩设计,手机/平板/PC 通吃
  • 可二次开发:单文件模块 + 完整中文注释

2. 快速开始

2.1 环境要求

组件 要求
PHP 8.0 及以上(推荐 8.2)
MySQL 5.7 及以上(utf8mb4)
Web 服务器 Nginx / Apache 均可
扩展 PDO MySQL、mbstring、fileinfo、curl(AI 功能用)

2.2 安装步骤

  1. 将程序文件复制到站点根目录(如 WWW/你的站点/
  2. 浏览器访问 http://你的域名/install.php
  3. 填写 数据库配置(Host / 端口 / 库名 / 账号 / 密码;数据库可不存在,向导自动创建)
  4. 填写 管理员账号(用户名 / 邮箱 / 密码,密码至少 6 位)
  5. 点击「开始安装」,等待完成
  6. 登录 http://你的域名/admin.php 开始使用

安装信息会写入 config.local.php,不会改动 config.php 默认值。 上线前建议删除 install.phpinstall/ 目录。

2.3 更换数据库

直接编辑 config.local.php 中的 DB_* 常量后刷新即可,无需改动其它文件。

2.4 伪静态(可选)

后台「基础设置 → URL 伪静态」开启后,在 Nginx 站点配置粘贴:

location / {
    if (!-e $request_filename) {
        rewrite ^/detail-([0-9]+)\.html$ /detail.php?id=$1 last;
        rewrite ^/category-([a-z0-9_-]+)\.html$ /category.php?cat=$1 last;
    }
}

默认使用动态 URL(detail.php?id=1),零配置即可运行。


3. 目录结构

站点根目录/
├── index.php          前台首页
├── category.php       分类浏览 / 条件筛选
├── detail.php         资源详情 / 下载 / 评论
├── search.php         全文检索
├── login.php          登录 / 注册
├── user.php           用户中心(12+ 面板)
├── publish.php        发布资源(富文本 / 置顶 / 上传)
├── ai-chat.php        AI 智能问答
├── lucky-wheel.php    抽奖活动中心
├── store.php          积分商城
├── notice.php         站点公告
├── page.php           协议页(用户协议 / 隐私 / 免责)
├── admin.php          管理后台(20 模块)
├── install.php        安装向导
├── config.php         主配置(数据库 / 默认值)
├── config.local.php   本地数据库配置(安装向导生成)
├── inc/
│   ├── functions.php  公共函数库(积分 / 置顶 / 广告 / 客服 / 安全)
│   ├── header.php     公共头部(导航 / Logo / favicon)
│   └── footer.php     公共尾部(搜索联想 / 轮播 / 客服悬浮)
├── api/               接口层(auth / action / user / publish / lucky / store / ai-chat / upload / search-suggest / logout)
├── install/           建表 SQL + 示例数据
├── assets/            样式 / 脚本 / 本地字体
├── uploads/           上传目录(防执行 / 防列目录)
├── backup/            一键备份 SQL
└── favicon.ico        站点图标

4. 数据库

  • 库名/账号/密码:安装时自定义(演示环境为 127.0.0.30
  • 表前缀:xc_
  • 26 张表(xc_ 前缀):
说明
xc_config 站点配置(键值对,后台所有设置存这里)
xc_user 用户(角色 / 积分 / 高级版到期 / 签到)
xc_category 分类(多级 / 精选 / 图标配色)
xc_doc 资源文档(下载方式 / 置顶 / 状态)
xc_tag / xc_doc_tag 标签 与 资源-标签关联
xc_comment / xc_comment_like 评论 与 点赞去重
xc_favorite / xc_history / xc_download 收藏 / 浏览历史 / 下载记录
xc_point_log 积分流水(收支 / 余额 / 类型)
xc_card 激活码 / 积分卡密
xc_ai_log AI 问答记录
xc_menu 导航菜单
xc_banner / xc_advert 轮播 Banner / 广告位
xc_notice 站点公告
xc_report 举报
xc_search_log 搜索日志(热搜词 / 联想)
xc_activity / xc_prize / xc_lucky_log 抽奖活动 / 奖品池 / 中奖记录
xc_store / xc_order 商城商品 / 兑换订单
xc_admin_log 后台操作日志

5. 前台功能

首页

  • 轮播 Banner(后台可配,支持渐变背景 / 起止时间)
  • 精选分类(后台「分类管理」勾选,最多 10 个)
  • 最新资源 / 热门推荐 / 热门下载榜 / 标签云 / 最新评论
  • 签到入口、AI 问答入口、积分余额展示

分类与筛选

  • 多级分类,分类页可按「下载方式 / 发布时间」筛选
  • 排序:综合 / 最新 / 下载 / 浏览 / 评论

资源详情

  • 资源速览(大小 / 格式 / 更新时间 / 解压密码)
  • 富文本正文(已做 XSS 白名单过滤)
  • 下载:免费 / 积分 / 高级版三种权限自动判定,本地直链或网盘链接(含提取码)
  • 评论互动(点赞 / 举报)、收藏 / 分享、相关推荐

全文检索

  • 标题 / 正文 / 标签 多范围命中
  • 关键词高亮、搜索联想(热搜词库)、热搜榜

积分商城

  • 积分兑换:积分 / 高级版天数 / 积分卡密
  • 库存控制、兑换订单记录、卡密即时发放

抽奖活动中心

  • 多活动切换(签到解锁 / 节日 / 新用户 / 积分抽奖)
  • 真实转盘动画、按概率出奖、中奖记录

在线客服(全站右下角悬浮)

  • 微信二维码 + 微信号一键复制
  • QQ 号复制 + 在线咨询(跳 QQ 临时会话)
  • 后台可配置开关 / 标题 / 欢迎语 / 二维码 / 联系方式

6. 用户中心

| 面板 | 功能 | |---|---| | 个人信息 | 昵称简介、邮箱绑定 | | 安全设置 | 修改密码(需旧密码)、设备管理 | | 激活高级版 | 折叠面板输入激活码(月 / 半年 / 年 / 永久) | | 我的收藏 | 管理收藏文档 | | 我的发布 | 自己发布的资源与状态 | | AI 问答历史 | 查看 / 清空提问记录 | | 我的评论 | 自己发过的留言 / 回复,可删除,分页 | | 最近浏览 | 按日期分组,可清空 | | 下载历史 | 下载记录 | | 积分详情 | 卡密充值、签到日历 | | 积分使用记录 | 收支明细、按月筛选 | | 消息通知 | 评论回复 / 系统通知 / 资源更新 |


7. 后台管理(20 模块)

| 模块 | 说明 | |---|---| | 📊 数据仪表盘 | 核心统计、热门搜索词、积分收支、最新动态、待办 | | 🗂️ 分类管理 | 多级分类、⭐精选、排序、图标配色、显隐 | | 📄 文档管理 | 筛选、置顶、回收站 | | 🔍 内容审核 | 待审列表,通过自动发积分,可填驳回原因 | | 🗑️ 回收站 | 恢复 / 彻底删除 | | 🚩 举报处理 | 资源/评论举报,处理 / 忽略 | | 💬 评论管理 | 删除违规评论 | | 🖼️ 轮播 Banner | 增删改 / 启停 / 排序 / 背景 | | 📢 广告管理 | 首页横幅 / 侧栏 / 列表三广告位,标题与链接 | | 👥 用户管理 | 封禁 / 解封 / 调整积分 | | 🔑 激活码 / 卡密 | 批量生成(类型 / 数量 / 前缀 / 时长 / 面额) | | 🪙 积分管理 | 全部积分规则、下载分成比例、置顶定价、本地上传扣费 | | 🛍️ 积分商城 | 商品管理(防刷校验)、兑换订单 | | 🎰 营销工具 | 抽奖活动发布、奖品池配置、中奖记录 | | 🤖 AI 设置 | DeepSeek Key / 模型 / Token 上限 / 每日次数 / 预算 | | 📧 邮件 SMTP | 发信配置 | | 🧭 导航菜单 | 前台导航管理 | | ⚙️ 基础设置 | 网站基础信息(Logo/favicon/ICP/版权)、TDK、在线客服、功能开关、URL 伪静态、数据库连接 | | 💾 一键备份 | 整库 SQL 备份到 backup/ | | 📋 操作日志 | 后台操作留痕 |


8. 积分与经济系统

默认积分规则(后台全部可改)

| 行为 | 积分 | |---|---| | 注册赠送 | +100 | | 每日签到 | +5(连签 7 天 +20) | | 邀请注册 | +50 | | 发布资源审核通过 | +20 | | 积分下载作者分成 | 默认 70%(后台可调) | | 免费下载 | 普通用户每日 3 次 | | 分类置顶 | 7 天 60 / 15 天 120 / 30 天 220 | | 高级会员 30 天置顶 | 默认 2 折(折扣分母可配) | | 本地上传 | 仅高级会员 · 1 积分/MB(最低 5 分)· ≤200MB | | 签到抽奖解锁 | 连续签到 7 天,每日 1 次 |

获取积分途径

签到 / 注册 / 邀请 / 发布通过 / 卡密充值 / 抽奖 / 商城兑换 / 作者分成

高级版权益

  • 全站资源免积分下载、无每日次数限制
  • 本地上传(扣积分)
  • 置顶 7/15 天免费,30 天折扣
  • 全站免广告、AI 问答每日次数大幅提升

9. 在线客服与站点配置

在线客服

后台「基础设置 → 在线客服」:

  • 总开关(前台右下角悬浮球)
  • 客服标题、欢迎语
  • 微信二维码图片(管理员上传,仅图片不扣积分)
  • 微信号(前台一键复制)、QQ 号(复制 + 在线咨询)
  • QQ 链接留空时按 QQ 号自动生成 wpa.qq.com 临时会话

网站基础信息

后台「基础设置 → 网站基础信息」:站名、副标题、Logo 上传、favicon 上传、ICP 备案号、版权。

TDK

后台「基础设置 → TDK 设置」:标题自动 = 页面名 + 站名;关键词、描述手动配置。


10. 安全机制

项目 实现
SQL 注入 PDO 预处理 + 参数绑定,ID 一律 (int),排序/时间白名单
XSS 输出统一 e() 转义;富文本 sanitize_html() 白名单过滤(发布+输出双端);搜索联想前端转义;toast 用 textContent
CSRF 全站 token 机制(表单自动注入 + fetch 拦截器自动附带),前台写接口与后台全部 POST 校验
密码 password_hash() / password_verify()
登录限流 同 IP 连续失败 5 次锁 15 分钟
上传安全 扩展名白名单 + finfo MIME 双重校验、随机重命名、日期分目录、uploads 目录 Nginx/Apache 禁脚本执行、防列目录
会话 HttpOnly + SameSite=Lax cookie
开放重定向 登录 back 参数白名单
并发安全 卡密/激活码/库存原子抢占(UPDATE ... WHERE status=0 / left>0)
敏感操作 后台操作日志留痕

11. 常见问题 FAQ

Q1:安装向导提示"数据库连接失败"?

检查数据库地址 / 端口 / 账号 / 密码是否正确;确认 MySQL 已启动;数据库名可留空让向导自动创建(需账号有建库权限)。

Q2:AI 问答一直返回"站内检索模式"?

后台「AI 设置」填入 DeepSeek API Key 并保存;未配置时系统自动降级为站内检索,属于预期行为。

Q3:注册收不到验证邮件?

后台「邮件 SMTP」填入邮箱 SMTP 服务器 / 端口 / 账号 / 授权码(如 QQ 邮箱授权码);本地环境建议先用"无需邮箱验证"模式。

Q4:上传文件提示"不支持的文件类型"?

本地上传仅允许白名单扩展名(图片/文档/压缩包/音视频等),可执行文件一律拒绝,属安全设计。

Q5:如何重置管理员密码?

phpMyAdmin 打开 xc_user 表,找到 admin 行,将 password 字段改为 php -r "echo password_hash('新密码', PASSWORD_DEFAULT);" 的输出值;或重新走 install.php(会清空数据,慎用)。

Q6:后台开关勾选后保存无效?

开关类(checkbox)已统一处理未勾选补 0,请确认点的是「保存开关」按钮;改完配置后刷新页面生效。

Q7:演示数据怎么清空?

后台逐项删除,或 phpMyAdmin 清空对应表(xc_doc / xc_comment 等),保留 xc_config / xc_user(含管理员)。


12. 二次开发指南

常用函数(inc/functions.php)

函数 说明
e($str) HTML 转义(所有输出必须用它)
setting($key, $default) 读取配置(数据库优先,缺省取默认值)
db() PDO 实例(预处理)
user() / uid() / is_login() / is_admin() / is_vip() 用户与权限
point_change() / point_spend() 积分变动(支持嵌套事务)
top_price($days, $vip) 置顶价格计算
sanitize_html() 富文本白名单过滤
safe_url() URL 协议白名单
csrf_check() / csrf_token() CSRF 校验
ad_box($slot) / notice_bar() 广告位 / 公告条

新增页面

  1. 复制任意前台页面骨架(require header.php + 内容 + include footer.php
  2. 需要登录的页面: require config.php + require_login()输出 HTML
  3. 数据操作走 db()->prepare() 预处理,输出一律 e()

新增接口

  1. api/ 下新建文件,开头 require_once __DIR__ . '/../config.php'
  2. 写操作必须:require_login()(如需)+ csrf_check()
  3. 返回用 json_out(['ok'=>bool, 'msg'=>'...'])

新增配置项

  1. config.php$GLOBALS['SITE_DEFAULTS'](或 POINT_DEFAULTS)加默认值
  2. 后台对应表单加 name="cfg[your_key]" 即可(save_config 自动落库)

13. 更新日志

V1.0(2026-08-07 首发)

  • 全量功能:前台 13 页 / 用户中心 12+ 面板 / 后台 20 模块 / 26 张表
  • 富文本编辑器、全文检索(联想)、AI 问答(DeepSeek)、积分商城、抽奖活动中心
  • 高级版激活码 / 卡密体系、置顶积分购买、本地上传(VIP+积分)
  • 全站广告、轮播、公告、在线客服(微信+QQ)
  • 完整安全加固:CSRF / XSS 过滤 / 上传防护 / 登录限流 / 原子并发
  • 安装向导支持自定义数据库(config.local.php 机制)

本文档由 ai小陈 编写,适用于「小陈资源 V1.0」安装版。

💬 留言 共 1 条 · 登录后可留言
管理员 普通 2026-08-10 14:48:29
😀