在 Discuz! X3.0 升级至 Discuz! X3 Beta 过程中,出现如下错误
经排查原因,是升级文件直接写出表前缀引起的。
解决办法:
1、找到升级文件 update.php ( intall/update.php 文件)
2、打开文件,找到如下代码- DB::query("INSERT INTO `pre_forum_threadprofile` (`id`, `name`, `template`, `global`) VALUES
- (1, '默认方案', 'a:2:{s:4:"left";s:399:"{numbercard}rn{groupicon}{*}
- {/groupicon}rn{authortitle}[i]{*}[/i]
- {/authortitle}rn{customstatus}{*}
- {/customstatus}rn{star}{*}
- {/star}rn{upgradeprogress}{*}
- {/upgradeprogress}rnrnt{baseinfo=credits,1}{baseinfo=credits,0}rnrn{medal}{*}
- {/medal}rn{baseinfo=field_qq,0}";s:3:"top";s:82:"rn{baseinfo=credits,1}{baseinfo=credits,0}rn";}', 1);");
复制代码 将 `pre_forum_threadprofile`调整为 ".DB::table("forum_threadprofile").",即- DB::query("INSERT INTO ".DB::table("forum_threadprofile")." (`id`, `name`, `template`, `global`) VALUES
- (1, '默认方案', 'a:2:{s:4:"left";s:399:"{numbercard}rn{groupicon}{*}
- {/groupicon}rn{authortitle}[i]{*}[/i]
- {/authortitle}rn{customstatus}{*}
- {/customstatus}rn{star}{*}
- {/star}rn{upgradeprogress}{*}
- {/upgradeprogress}rnrnt{baseinfo=credits,1}{baseinfo=credits,0}rnrn{medal}{*}
- {/medal}rn{baseinfo=field_qq,0}";s:3:"top";s:82:"rn{baseinfo=credits,1}{baseinfo=credits,0}rn";}', 1);");
复制代码 修改完毕,报错后,重新运行程序即可。
此问题的解决办法最早由 “雾非雾的情思“提供,在此我们感谢”雾非雾的情思“的无私奉献 |