游客
游客
阅读:684 回复:0

搜索时直接点击热门关键字无法读取中文的bug修正方法

楼主#
更多 发布于:2016-11-13 18:12

问题

在搜索引擎中输入中文并提交,其结果没有问题,但如果直接使用热门关键字打开结果页面,则会出现错误。


原因

搜索引擎提交时,是post方法读取搜索内容,而热门关键字直选结果则是使用get方法从路径中获得查询内容。由于当前thinkphp版本对php5.4以后的版本存在gb2312转换utf8的格式问题,从而导致安全过滤时会去掉中文,因此需要到thinkphp核心改动。

http://www.thinkphp.cn/bug/3141.html


解决办法

打开thinkphp的文件,路径:ThinkPHPCommonfunctions.php

新增红线标出的二行,意思为:

1、首先把url获取的中文转换为utf8格式

2、提前输出,不要被thinkphp默认的think_filter给空白化了。

游客

返回顶部