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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

导航不断的被追加记录

[复制链接]
ye_819 发表于 2015-10-15 16:02:28 | 显示全部楼层 |阅读模式
本帖最后由 ye_819 于 2015-10-15 16:04 编辑

Bug现象:当服务器运行缓慢时,pre_common_nav中不停的出现新记录,删掉了还出来。
Bug原因:source/function/cache/cache_setting.php中505行左右,以下的这部分代码,判断pre_common_nav表中是否有些插件,没有则插入新数据,当服务器运行缓慢时返回false,而不是“0”,所以只要有人刷新页面,就会不断的把数据插入到pre_common_nav表中。
  1. if(!(C::t('common_nav')->count_by_navtype_type_identifier($navtype, 3, $plugin['identifier'])) ) {
  2.                                                                 C::t('common_nav')->insert(array(
  3.                                                                 'name' => $module['menu'],
  4.                                                                 'title' => $module['navtitle'],
  5.                                                                 'url' => $module['url'],
  6.                                                                 'type' => 3,
  7.                                                                 'identifier' => $plugin['identifier'],
  8.                                                                 'navtype' => $navtype,
  9.                                                                 'available' => 1,
  10.                                                                 'icon' => $module['navicon'],
  11.                                                                 'subname' => $module['navsubname'],
  12.                                                                 'suburl' => $module['navsuburl'],
  13.                                                                 ));
  14.                                                         }
复制代码
如何修改:只要用全等来判断返回值是否为“0”就可以了,修改如下:
  1. if((C::t('common_nav')->count_by_navtype_type_identifier($navtype, 3, $plugin['identifier'])) === "0") {
  2.                                                                 C::t('common_nav')->insert(array(
  3.                                                                 'name' => $module['menu'],
  4.                                                                 'title' => $module['navtitle'],
  5.                                                                 'url' => $module['url'],
  6.                                                                 'type' => 3,
  7.                                                                 'identifier' => $plugin['identifier'],
  8.                                                                 'navtype' => $navtype,
  9.                                                                 'available' => 1,
  10.                                                                 'icon' => $module['navicon'],
  11.                                                                 'subname' => $module['navsubname'],
  12.                                                                 'suburl' => $module['navsuburl'],
  13.                                                                 ));
  14.                                                         }
复制代码




您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-25 02:24 , Processed in 0.022643 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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