# 🚀 宝塔快速部署修复指南 ## 问题现状 1. ❌ 后台游戏类型下拉菜单没有"Xóc Đĩa"选项 2. ❌ 玩法标签缺少适合 Xóc Đĩa 的选项 3. ❌ 前台显示的是骰子游戏的投注面板(不是 Xóc Đĩa 面板) 4. ❌ 没有直播画面 --- ## ✅ 解决方案 ### 第一步:上传修改的文件 #### 📁 需要替换的文件(共5个) ``` 1. App/Views/Admin/games.php ← 已修复游戏类型和标签选项 2. App/Controllers/Web/HomeController.php 3. App/Controllers/Web/BetController.php 4. App/Controllers/Admin/PeriodController.php 5. App/Views/Web/live.php ``` #### 📦 需要新增的文件(共2个) ``` 1. App/Views/Web/components/xocdia-bet-panel.php ← Xóc Đĩa 投注面板 2. Db/fix_xocdia_game.sql ← 快速修复SQL ``` --- ### 第二步:宝塔文件上传操作 #### 🔧 方式1:通过宝塔文件管理器(推荐) 1. **备份原文件** ``` 登录宝塔 → 文件管理 → 导航到网站根目录 → 找到以下文件并重命名(加 .bak 后缀): - App/Views/Admin/games.php → games.php.bak - App/Controllers/Web/HomeController.php → HomeController.php.bak - App/Controllers/Web/BetController.php → BetController.php.bak - App/Controllers/Admin/PeriodController.php → PeriodController.php.bak - App/Views/Web/live.php → live.php.bak ``` 2. **上传新文件** ``` → 创建目录:App/Views/Web/components/ → 上传 xocdia-bet-panel.php 到该目录 → 上传其他5个修改的文件到对应位置 → 上传 fix_xocdia_game.sql 到 Db/ 目录 ``` 3. **设置权限** ``` → 选中所有上传的 .php 文件 → 右键 → 权限 → 设置为 644 ``` --- ### 第三步:执行修复SQL脚本 #### 🗄️ 通过 phpMyAdmin(最简单) ``` 宝塔面板 → 数据库 → 点击您的数据库名 → phpMyAdmin → SQL 标签页 → 复制粘贴 fix_xocdia_game.sql 的全部内容 → 点击"执行" ``` **预期结果**: ``` 应该看到查询结果: game_id | name | code | type | status | featured | odds_count --------|----------|---------|---------|--------|----------|------------ 2 | Xóc Đĩa | xocdia | xocdia | 1 | 1 | 6 如果 odds_count = 6,说明修复成功! ``` #### 🔍 如果遇到错误 **错误1:Duplicate entry for key 'PRIMARY'** ```sql -- 说明游戏已存在,只需要更新类型 UPDATE games SET type = 'xocdia', code = 'xocdia', tags = 'hot,traditional' WHERE name LIKE '%Xóc%' OR name LIKE '%色碟%'; ``` **错误2:Table 'game_odds' doesn't exist** ```sql -- 需要先创建 game_odds 表(执行完整的 xocdia_setup.sql) ``` --- ### 第四步:验证修复 #### ✅ 检查清单 1. **后台验证** ``` 访问:http://您的域名/admin/games → 点击"新增游戏" → 检查"游戏类型"下拉菜单: ☐ 骰子游戏 ☐ Xóc Đĩa(色碟) ← 应该有这个选项 ☐ 其他 ``` 2. **数据库验证** ```sql -- 在 phpMyAdmin 执行 SELECT id, name, code, type, status FROM games WHERE code='xocdia'; -- 应该返回: -- id | name | code | type | status -- ---|---------|--------|--------|-------- -- 2 | Xóc Đĩa | xocdia | xocdia | 1 ``` 3. **前台验证** ``` 访问:http://您的域名/ → 应该看到 Xóc Đĩa 游戏卡片 → 点击进入游戏 → 应该看到 Xóc Đĩa 投注面板(双/单 + 精确组合) → 不应该看到骰子游戏的界面 ``` --- ### 第五步:配置直播流(可选) 如果您有直播流地址: ``` 后台 → 游戏管理 → 编辑 Xóc Đĩa → 直播流地址:填写您的 HLS/FLV 地址 例如:https://your-cdn.com/live/xocdia.m3u8 → 保存 ``` 如果暂时没有直播: ``` 可以先不填,系统会正常运行,只是没有视频画面 ``` --- ## 🔍 故障排查 ### 问题1:前台仍然显示骰子游戏界面 **原因**:游戏的 `type` 字段不是 'xocdia' **解决**: ```sql -- 在 phpMyAdmin 执行 SELECT id, name, type FROM games WHERE name LIKE '%Xóc%'; -- 如果 type 不是 'xocdia',执行: UPDATE games SET type='xocdia' WHERE name LIKE '%Xóc%'; ``` --- ### 问题2:后台看不到游戏类型选项 **原因**:games.php 文件没有替换成功 **解决**: ``` 1. 检查文件是否上传: App/Views/Admin/games.php 2. 检查文件大小是否与本地一致 3. 清除浏览器缓存(Ctrl+F5) ``` --- ### 问题3:点击游戏后页面空白或500错误 **原因**:组件文件缺失或权限错误 **解决**: ``` 1. 检查文件是否存在: App/Views/Web/components/xocdia-bet-panel.php 2. 检查文件权限: chmod 644 App/Views/Web/components/xocdia-bet-panel.php 3. 查看错误日志: 宝塔 → 网站 → 日志 → PHP错误日志 ``` --- ### 问题4:投注后提示"赔率无效" **原因**:game_odds 表中缺少赔率配置 **解决**: ```sql -- 重新执行赔率配置(在 phpMyAdmin) SET @xocdia_game_id = (SELECT id FROM games WHERE code='xocdia'); DELETE FROM game_odds WHERE game_id = @xocdia_game_id; INSERT INTO game_odds (game_id, type, target, odds, created_at) VALUES (@xocdia_game_id, 'chan', 'all', 0.96, NOW()), (@xocdia_game_id, 'le', 'all', 0.96, NOW()), (@xocdia_game_id, 'exact', '4red', 10.0, NOW()), (@xocdia_game_id, 'exact', '4white', 10.0, NOW()), (@xocdia_game_id, 'exact', '3red1white', 3.5, NOW()), (@xocdia_game_id, 'exact', '3white1red', 3.5, NOW()); ``` --- ## 📝 完整操作总结 ### 宝塔操作步骤(按顺序) ``` 1. 【文件管理】备份原文件(重命名加.bak) 2. 【文件管理】创建 components 目录 3. 【文件管理】上传7个文件(5个替换 + 2个新增) 4. 【文件管理】设置权限为 644 5. 【数据库】→ phpMyAdmin → 执行 fix_xocdia_game.sql 6. 【浏览器】清除缓存 7. 【后台】验证游戏类型选项 8. 【前台】验证 Xóc Đĩa 界面 ``` --- ## ⏱️ 预计耗时 - 文件上传:5-10分钟 - 执行SQL:1分钟 - 验证测试:5分钟 - **总计:15分钟左右** --- ## 📞 需要帮助? 如果遇到问题,请提供: 1. 错误截图 2. PHP错误日志(宝塔 → 网站 → 日志) 3. 数据库查询结果: ```sql SELECT id, name, code, type FROM games; ``` --- **最后更新**: 2026-01-08 **适用版本**: TM68 投注平台