7.0之前版本升级后旧贴子html不激活的解决方案
Discuz!7.0 正式版对发 html 帖的权限进行了变更,极大的提高了安全性,并且使得 html 权限与其他权限的设置保持统一。变更之后,开启 html 权限的必须步骤:
1.开启版块 html 权限;
2.开启用户组 html 权限。
废弃了原有的“只要开启版块 html 权限,所有会员都可以在该版块发 html 帖”的机制。
如果升级后原来已经开启 html 版块的帖子无法解析 html 代码,可以在论坛后台执行以下 SQL 修复:
UPDATE cdb_forums f, cdb_posts p SET p.htmlon=p.htmlon|1 WHERE p.fid=f.fid AND f.allowhtml='1';
也可以用站长工具tools,里面有内置的这个SQL(推荐)。
目前经测试,贴子量太多的话好像不能成功,SQL执行超时卡死~
--------------------------------
故障现象:新发的帖子正常,不会出现HTML代码,但是旧的帖子直接显示HTML代码,看着很乱。无论如何改版块HTML和用户HTML权限都无法解决。
经在数据库里比对,发现 pre_forum_post 表里 有一个字段为 htmlon。
新帖子数据为1,而旧的帖子全部是0,把全部数据替换为1后,论坛终于正常了。看来是转换和升级的时候,没有转换到这个字段。
页:
[1]