常见程序搜索关键字转码
个别搜索类的网站因为用户恶意搜索出现误拦截情况,这类网站本身没有非法信息,只是因为把搜索关键字显示在网页中(如下图)
,可以参考下面方法对输出的关键字进行转码
image.png
DEDECMS程序
本文针对Dedecms程序进行搜索转码,其它程序原理类似对搜索结果的关键字进行转码后输出
一查看网站编码,访问后台下面会显示,GBK和UTF8两个版本
image.png
二复制下面代码到 clude/extend.func.php 文件尾部(根据您的网站编码复制对应的代码,编辑网页时推荐使用notepad、editplus软件)
UTF-8编码
function CharCodeAt($str)
{
$strr="";
for($i=0;$i<mb_strlen($str,'utf-8');$i++){
$char = mb_substr($str,$i,1, 'UTF-8');
if (mb_check_encodg($char, 'UTF-8'))
{
$ret = mb_convert_encodg($char, 'UTF-32BE', 'UTF-8');
$strr.="&#".hexdec(b2hex($ret));
}
else
{
return null;
}
}
return $strr;
}
GBK编码
function CharCodeAt($str)
{
$strr="";
for($i=0;$i<mb_strlen($str,'gb2312');$i++){
$char = mb_substr($str,$i,1, 'gb2312');
if (mb_check_encodg($char, 'gb2312'))
{
$ret = mb_convert_encodg($char, 'UTF-32BE', 'gb2312');
$strr.="&#".hexdec(b2hex($ret));
}
else
{
return null;
}
}
return $strr;
}
三修改搜索模板文件templets/default/search.htm 【其它模板可能路径会有变化】
找到 {dede:global name='keyword' function='RemoveXSS(@me)'/}
替换成{dede:global name='keyword' function='CharCodeAt(RemoveXSS(@me))'/}
四查看搜索页源代码,查看是否生效
image.png
Discuz 程序,示例针对Discuz!X3.4 GBK版本
一、查看网页编码
1.网页右键查看源代码
blob.png
2.查看config/config.php 的$_config['output']['charset']
blob.png
二、根据编码复制上面的CharCodeAt函数,修改 source/function/function_search.php 文件,加到文件尾部,注意在?> 前面
blob.png
三、修改source/module/search/search_forum.php 程序
在129行添加如下两行代码
$keyword = CharCodeAt($keyword);
$modkeyword = CharCodeAt($modkeyword);
blob.png
四、查看搜索页源代码,检查是否生效
blob.png
推火专家西部数码
网站设计
- 静宁会SEO的网站建设公司:全面提升您的网络影
- 提升在线业务的关键:选择最佳的丽水网站建设
- 浙江网站优化发展潜力如何
- 井研专业的网站建设公司:打造您的在线品牌
- 灵山SEO网站建设公司:提升您的在线业务表现
- 蒙城网站建设优化公司:提升您网站表现的理想
- 阳谷企业网站优化:提升线上业务力的关键
- 樟树专业的网站建设公司:打造您在线业务的坚
- 通河百度SEO排名的策略与技巧
- 重庆百度快照排名如何进行精准的客户引流
- 重庆百度快照排名
- 常宁便宜的建站公司:助您轻松打造在线业务
- 巫溪百度网站优化:提升网站曝光率与流量的关
- 湖北整站优化怎么做才能放大客户需求
- 闸北网站建设多少钱?全面解析与预算规划
- 辽宁企业网站优化怎么做电话营销