ygtz 发表于 2012-4-18 10:45:27

织梦DEDECMS5.7网站搜索大小写的问题

织梦DedeCMS5.7网站搜索大小写的问题:
测试版本为织梦V5.7版本,编码为GBK,在使用其搜索模块时,出现了关键字不认大写字母的情况,如下图所示,例如关键字为"Abc"
追踪其源码在"/include/helpers/filter.helper.php"中第133行找到其函数"FilterSearch"
if ( ! function_exists('FilterSearch'))
{
    function FilterSearch($keyword)
    {
      global $cfg_soft_lang;
      if($cfg_soft_lang=='utf-8')
      {
      
            $keyword = preg_replace("/[\"\r\n\t\$\\> 0x80)
                {
                  if(isset($keyword[$i+1]) ;; ord($keyword[$i+1]) > 0x40)
                  {
                        $restr .= $keyword[$i].$keyword[$i+1];
                        $i++;
                  }
                  else
                  {
                        $restr .= ' ';
                  }
                }
                else
                {
                  if(preg_match("/[^0-9a-z@#\.]/",$keyword[$i]))   ----------将这里改为"if(preg_match("/[^0-9a-zA-Z@#\.]/",$keyword[$i]))"即可
                  {
                                    
         
                        $restr .= ' ';
                  }
                  else
                  {
                        $restr .= $keyword[$i];
                  }
                }
            }
      }
      return $restr;

OK了,问题解决了!
页: [1]
查看完整版本: 织梦DEDECMS5.7网站搜索大小写的问题