Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

【已修复】关于分类信息表不能同步的解决方案!

[复制链接]
聪明的狼 发表于 2014-6-20 15:33:29 | 显示全部楼层 |阅读模式
最近开发dz的时候涉及到使用dz的分类信息,但是我发现dz的分类信息机制很不完善,

首先,存储分类信息变量值的有两张表:forum_typeoptionvar和forum_optionvalue

发布分类信息的时候两个表同时储存,但是读取数据的时候是从 forum_typeoptionvar 表里取出,而这张表集合了所有分类信息的变量值,如果分类信息的数据量很大,那肯定会影响性能(关于怎么修改,我之后再发布)
现在我先说下 关于 forum_typeoptionvar和forum_optionvalue两张表在编辑帖子发布后 分类信息不能同步更新问题!
已经发布的分类信息,从新编辑修改后发布 数据只会更新到   forum_typeoptionvar  而forum_optionvalue表的数据不会更新,依然是最开始发布的内容

关于这个问题就不过多阐述:discuz.dismall.com/thread-3544369-1-1.htmlhttps://discuz.dismall.com/thread-3474267-1-1.html

下面说下解决办法:首先找到以下文件
source/class/extend/extend_thread_sort.php

大约在121 行代码处
  1. C::t('forum_typeoptionvar')->update_by_tid($this->thread['tid'], array('value' => $value, 'sortid' => $parameters['sortid']), false, false, $optionid);               
  2. }

  3. if($typeexpiration) {
  4.                     C::t('forum_typeoptionvar')->update_by_tid($this->thread['tid'], array('expiration' => (TIMESTAMP + $typeexpiration)), false, false, null, $parameters['sortid']);
  5. }
复制代码
将此处代码修改为:[code]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-3-13 05:00 , Processed in 0.037751 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表