[daily_checkin]每日签到热
- bbs1org2026-07-08每日签到ID daily_checkin版本 1.1.3插件制作者 bbs1org免费358 行 / 19.6 KBHook / 路由 / 后台页让用户每天签到并累计连续签到天数,管理员可按用户组开启自动签到并查看签到情况。app/plugins/daily_checkin/plugin.php开发日志已有 2 条
此项目接受所有登录用户协助维护和提交更新。
主楼点赞与点评1bbs1org2026-08-25
插件质量报告
插件:
daily_checkinHook 功能范围 循环 使用频率 文件读写 修改系统表 读写系统表 读写自己的表 app.boot 全站请求启动 否 5 - - - 写 plugin_daily_checkins sidebar.feature_links 首页/侧栏快捷功能 否 5 - - - 读 plugin_daily_checkins sidebar.stack 全站侧栏组件栈 否 5 - - - 读 plugin_daily_checkins 颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。“文件批处理”表示逐个处理用户一次提交的文件,属于必要操作,不标记修正。只有操作实际处于需要优化的循环路径时,才会标记“修正❗️”。
数据字典
plugin_daily_checkins字段 类型 可空 默认值 约束 user_id uint 否 - 主键 checkin_date key 否 - 主键 streak uint 否 1 - created_at uint 否 - - - bbs1org2026-07-08
插件
插件市场
- bbs1org2026-07-08
插件市场
- bbs1org2026-07-09
当前插件通过审核,插件市场可安装。
- 1234567892026-08-14
- 1234567892026-08-14
- bbs1org2026-08-14
- 1234567892026-08-14
- 1234567892026-08-14
功能需求 增加自动签到选项 可以设置哪些用户组自动签到
- bbs1org2026-08-16
🔍 插件审查报告(对照《AI 开发规则》与开发者文档)
🔒 安全问题
未发现明显问题。积分经
user_points_change()原子落账,SQL 均参数化,路由经need_login保护。⚡ 性能问题
未发现明显问题。侧栏统计用当日 Cookie 缓存,避免每页重复查询。
🐛 功能/规范缺陷
plugin.php:194先查daily_checkin_row(),plugin.php:207直接INSERT,(user_id,checkin_date) 为主键。快速双击/并发时第二次插入会命中唯一约束抛出异常。建议改用app_db_insert_ignore(..., ['user_id','checkin_date'])或放入tx()内重查再插,保证幂等。plugin.php:121-141样式写死多组数字字号与border-radius:7px/999px,建议改用 CSS 变量。
✅ 修复优先级
- 签到写入防重(中);2. CSS 变量化(低)。
- bbs1org2026-08-25
版本 1.0.6 更新:
共享插件 版本 1.1.3 更新:
新增自动签到功能 可以选择自动签到的用户组🔍 插件审查报告(AI 自动审查,对照《AI 开发规则》与开发者文档;本插件未被 8/18 楼上 350 的报告覆盖,属独立首次审查)
插件:每日签到(daily_checkin)v1.1.3
🔒 安全问题
未发现明显安全问题。⚡ 性能问题
未发现明显问题。🐛 功能/规范缺陷
规范一致性建议:后台管理页函数体内未见显式调用核心 need_admin()(依赖核心 admin_page() 路由层统一鉴权兜底,当前不构成越权);涉及写操作时判断请求方式使用手写的 $_SERVER['REQUEST_METHOD'] === 'POST',效果等价于核心 require_post(),但写法与站内多数插件不一致。✅ 修复优先级
低优先级:建议在后台页面函数内补充显式 need_admin()/require_post() 调用,作为纵深防御,避免未来核心路由调整时失去这层保护;不影响当前功能与安全性。