本帖最后由 zhenxiao11 于 2012-4-7 15:53 编辑
经查是数据库里common_modrate 数据审核表 有 'postid' 的 idtype 类型, 而升级文件里没有对应该idtype的处理方法,删除这些数据就搞定了。不排除可能会出现其他未知的 idtype类型。
在数据库里执行SQL语句 “delete from `{表前缀}_common_modrate` where `idtype` = 'postid'”
就搞定了。
common_modrate 这个表是数据审核表 里面放的是需要审核的数据, idtype代表审核的类型, 2.0升级2.5的时候把每个类型单独分开放到了不同的表, 而 如果你的 idtype 里有一些稀奇或者旧的类型的话, 升级程序就会出错了。见下面的代码。为升级程序 update.php 1534行
- $tables = array(
- 'tid' => 'forum_thread_moderate',
- 'pid' => 'forum_post_moderate',
- 'blogid' => 'home_blog_moderate',
- 'picid' => 'home_pic_moderate',
- 'doid' => 'home_doing_moderate',
- 'sid' => 'home_share_moderate',
- 'aid' => 'portal_article_moderate',
- 'aid_cid' => 'portal_article_comment_moderate',
- 'topicid_cid' => 'portal_comment_moderate',
- 'uid_cid' => 'home_comment_moderate',
- 'blogid_cid' => 'home_comment_moderate',
- 'sid_cid' => 'home_comment_moderate',
- 'picid_cid' => 'home_comment_moderate',
- //如果你的数据库里有 idtype 不在上面这个数组里的话,就是会出错的,比如我的就是有 postid。
- );
复制代码 删除这个表里的数据 只是删除一个审核索引而已的, 不会影响到对应的帖子或者图片 都不会影响到,也就是不会有数据丢失的。你把这个表清空了~~~也不会影响到你论坛的任何数据, 只是说 不在待审核列表里了,数据本身还是在的
|