查看: 53|回复: 0

[教程] 浅析DedeCMS GBK版安装sphinx全文索引无法查询无结果的解决方法

[复制链接]

4

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2008-6-23
发表于 2023-10-21 00:00:00 | 显示全部楼层 |阅读模式
本测试安装的是sphinx中文版-coreseek 4.0版,用测试中文的命令在命令行查询: 

echo 网络搜索 | iconv -f gbk -t utf-8 | search -c D:\webserver\coreseek-4.0.1-win32\etc\csft_dedecmsv57.conf --stdin | iconv -f utf-8 -t gbk 

可成功查询。 

但在DedeCms中却无结果,经过摸索,终于找到原因,DedeCMS GBK版的search.php中的关键字编辑是GBK的,而sphinx全文索引要求是utf8, 
所以无法查询GBK编码的中文; 

解决方法: 
打开plus中的search.php , 找到: 
$keyword = addslashes(cn_substr($keyword,30)); 

在这行下面增加: 
$keyword= mb_convert_encoding($keyword,"UTF-8", "GBK"); 

即可正常查询! 
回复

使用道具 举报

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

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部