共计 2341 个字符,预计需要花费 6 分钟才能阅读完成。
一个网页版传统玩具模拟器,模拟竹知了(竹蝉)在弹性绳上旋转发出 ” 哇哇 ” 声的玩法。可独立部署到你自己的 PHP 服务器上,支持弹窗广告自定义。
—
## ✨ 功能特性
### 核心玩法
– ** 手动拖拽 **:按住屏幕画圈,竹筒在弹性绳上旋转,转速越快声音越大
– ** 自动甩 **:点击按钮自动匀速旋转
– ** 甩手机 **:移动端支持体感操作(通过设备陀螺仪检测摇晃)
– ** 真实物理 **:模拟重力、弹性绳拉力、空气阻力
– ** 声音引擎 **:首选真实竹知了录音采样,解码失败自动回退到 Web Audio 合成音效
### 皮肤 & 场景
| 皮肤 | 场景 |
|——|——|
| 🎋 竹知了(默认)| ☀️ 白天 |
| 🐷 猪猪侠 | 🌤 中午 |
| 🕷️ 蜘蛛侠 | 🌙 夜间 |
### 弹窗广告系统
点击右上角按钮可弹出自定义弹窗,支持 3 种内容样式:
| 样式 | 说明 |
|——|——|
| ** 富文本 ** | 支持 HTML,自由排版文字、图片、链接 |
| ** 文字 + 图片 ** | 广告文字 + 广告图片,可选 ” 一键复制 ” 按钮 |
| **QQ 群推广 ** | 显示加群提示 + QQ 群跳转按钮 |
弹窗支持可选二维码展示区域。
### 数据统计
– 右下角显示在线人数、访问量、” 哇 ” 声次数等全站实时数据
– 每次甩出竹知了叫声都会计入全球统计
—
## 📦 文件结构
> 上传到你服务器后,目录结构如下:
“`
/
├── index.php # 用户面向的主页面(竹知了玩具 + 弹窗)
├── api.php # 后端 API(认证 + 设置存取)
├── admin/
│ └── index.html # 管理后台(配置弹窗内容)
├── user.db # SQLite 数据库(自动生成,首次设置管理员时创建)
└── user_data.json # 备用存储(SQLite 不可用时自动切换)
“`
—
## 🚀 部署指南
### 环境要求
| 项目 | 要求 |
|——|——|
| PHP | ≥ 7.0(推荐 7.4+)|
| SQLite3 扩展 | 推荐开启(默认开启),不可用时会自动使用 JSON 文件存储 |
| Web 服务器 | Apache / Nginx(需配置 PHP 处理)|
| 目录权限 | `user/` 目录需可写(755 或 777)|
| 浏览器 | 支持 Canvas 2D、Web Audio API 的现代浏览器 |
### 部署步骤
**1. 上传文件 **
将 `user/` 目录下所有文件上传到你的 PHP 服务器的任意目录,例如:
“`
https:// 你的域名 / → 根目录部署
https:// 你的域名 /zhuzhiliao/ → 子目录部署
“`
**2. 验证 PHP 是否正常 **
浏览器访问:
“`
https:// 你的域名 /api.php?action=ping
“`
正常应返回类似:
“`json
{“ok”:true,”storage”:”sqlite”,”php”:”8.0.26″,”sqlite”:true,”time”:1785750894}
“`
**3. 配置后台 **
访问管理员后台:
“`
https:// 你的域名 /admin/
“`
首次打开会进入「创建管理员」页面,设置你的账号和密码。
**4. 自定义弹窗 **
登录后台后,可配置:
– 右上角按钮文字
– 弹窗标题和描述
– 弹窗内容样式(富文本 / 文字图片 / QQ 群)
– 二维码图片和名称
– 左下角站点链接
**5. 打开用户页面 **
配置完成后,访问用户页面即可看到自定义效果:
“`
https:// 你的域名 /
“`
—
## 🎛️ 后台配置项
### 基本信息
| 配置项 | 说明 | 默认值 |
|——–|——|——–|
| 按钮文字 | 右上角 ” 关于 ” 按钮的文字 | 关于 |
| 弹窗标题 | 弹窗顶部的标题 | 关于小程序 |
| 弹窗副标题 | 标题下方的描述文字 | — |
| 站点链接 | 左下角链接跳转地址 | zhiliao.y1g.cc |
| 链接文字 | 左下角链接显示的文字 | — |
### 弹窗内容(三选一)
** 富文本模式 **
– 富文本内容:支持 HTML 标签,可插入图片、链接、排版文字
** 文字 + 图片模式 **
– 广告文字:展示的文字内容
– 图片链接:广告图片的 URL
– 一键复制开关:开启后用户可一键复制广告文字
**QQ 群模式 **
– QQ 群链接:点击后跳转到 QQ 加群页面
### 二维码(可选)
| 配置项 | 说明 |
|——–|——|
| 二维码图片 | 二维码图片的 URL(留空不显示)|
| 二维码名称 | 二维码下方显示的名称 |
—
## 🔒 安全说明
– 管理员密码使用 SHA-256 + 盐值哈希存储,不会明文保存
– 登录态使用随机 Token,有效期 2 小时
– 弹窗设置接口(GET)公开可读(用户页面需要),写入(POST)需要管理员认证
– 如果不慎忘记密码,可在后台登录页点击「忘记密码」重置(使用安全密钥 `zzl_reset_2024`)
—
## ❓ 常见问题
**Q: 后台提示 ” 无法连接后端服务 ” 怎么办?**
1. 确认 PHP 已安装:命令行执行 `php -v`
2. 确认 Web 服务器能处理 `.php` 文件
3. 直接访问 `api.php?action=ping` 测试后端是否正常
4. 测试时使用 PHP 内置服务器:`php -S 0.0.0.0:8000`
**Q: 弹窗设置保存后用户页面没变化?**
用户页面通过 PHP 注入设置,刷新页面即可看到最新效果。
**Q: 没有 SQLite 能用吗?**
可以。系统会自动检测,SQLite 不可用时使用 `user_data.json` 文件存储,功能完全一致。
**Q: 如何重置所有数据?**
登录后台 → 修改密码区域 → 点击「重置账号」。这会清除管理员账号和所有弹窗设置。
—
## 📄 许可
仅供娱乐与学习交流,严禁用于商业用途。
