Manyou诚邀开发者加盟 | 常见问题
《站长》俱乐部官方群公布 城市联络员机会多多
立即免费下载 Discuz!7.0.0 正式版
安装升级指南 | 用户手册 | 新手建站学堂
基于.net架构的Discuz!NT2.6正式版发布
Comsenz公司2009年招贤纳士,期待您的加盟
Discuz!收费服务内容及价格
7月重庆、成都、西安三地社区运营实战特训速报名
Discuz!/UCHome 专用官方虚拟主机
牧场新服一起联运:豆浆机免费带回家
基于Discuz!的免费论坛空间5D6D
康盛创想《站长》俱乐部18城市互动之旅报名ing
返回列表 回复 发帖

关于tag解析出错的补丁

适应版本:Discuz!6.0.0(0904版本)
修正问题:查看帖子的时候出现诸如
  1. php?name=%B5%C8%C0%EB%D7%D3" onclick="tagshow(event)" class="t_tag">
复制代码
的多余内容
修正方法:
1.打开viewthread.php
查找
  1. $postlist[$firstpid]['message'] = preg_replace('#(^|>)([^<]+)(?=<|$)#sUe', "highlight('\\2', \$_DCACHE[tags], '\\1')", $postlist[$firstpid]['message']);
复制代码
改为
  1.                 $postlist[$firstpid]['message'] = preg_replace('#(^|>)([^<]+)(?=<|$)#sUe', "highlight('\\2', \$_DCACHE[tags], '\\1')", $postlist[$firstpid]['message']);
  2.                 $postlist[$firstpid]['message'] = preg_replace('#<highlight>(.*)</highlight>#siUe', "'<span href=\"tag.php?name='.rawurlencode('\\1').'\" onclick=\"tagshow(event)\" class=\"t_tag\">\\1</span>'", $postlist[$firstpid]['message']);
复制代码
2.打开include/discuzcode.func.php
查找
  1. $message = preg_replace('#(^|>)([^<]+)(?=<|$)#sUe', "highlight('\\2', \$highlightarray, '\\1', 0)", $message);
复制代码
改为
  1.                 $message = preg_replace('#(^|>)([^<]+)(?=<|$)#sUe', "highlight('\\2', \$highlightarray, '\\1', 0)", $message);
  2.                 $message = preg_replace('#<highlight>(.*)</highlight>#siU', "<strong><font color=\"#FF0000\">\\1</font></strong>", $message);
复制代码
查找
  1.                         global $_DCACHE;
  2.                         if($_DCACHE['tags'][$key] && @strexists($text, $replaceword)) {
  3.                                 $text = str_replace($replaceword, '<span href="tag.php?name='.rawurlencode($replaceword).'" onclick="tagshow(event)" class="t_tag">'.$replaceword.'</span>', $text);
  4.                                 unset($_DCACHE['tags'][$key]);
  5.                         }
  6.                 } else {
  7.                         $text = str_replace($replaceword, '<strong><font color="#FF0000">'.$replaceword.'</font></strong>', $text);
  8.                 }
复制代码
改为
  1.                         global $_DCACHE;
  2.                         if($_DCACHE['tags'][$key] && @strexists($text, $replaceword)) {
  3.                                 $text = str_replace($replaceword, '<highlight>'.$replaceword.'</highlight>', $text);
  4.                                 unset($_DCACHE['tags'][$key]);
  5.                         }
  6.                 } else {
  7.                         $text = str_replace($replaceword, '<highlight>'.$replaceword.'</highlight>', $text);
  8.                 }
复制代码
如若未对文件进行过修改,可以直接下载附件里的程序进行覆盖同名文件即可

[ 本帖最后由 lu5266 于 2007-10-19 10:54 编辑 ]

tag.zip (12.82 KB)

1

评分次数

  • lukechern

沙发./.........
 
我还没发现这个问题
呵呵 改用标签了?
虽然治标不治本 不过多少强一些
1.jpg



3Q
第一个就没找到....
[ SOHOlife.STUDIO ]  -  SOHO生活!多姿、多彩~
SOHO族的栖息地,生活、工作、娱乐~
茶社商业插件代理:http://www.soholife.cn/bbs/forumdisplay.php?fid=25
还没遇到过 在什么情况下出的问题?
此修改在下次补丁时会内置
请放心修改
插件的新时代到来,抛弃反复修改文件烦恼,Discuz! 新插件核心组件包
Developer 群: UCenter 62652819、Discuz! 65628432[开发求助线] (欢迎开发作者们加入)
DisAD! 自助广告管理系统交流群: 62652633 (DisAD! 官方网站)
...
返回列表