Joomla!藏經閣

Joomla! 台灣站務+Web技術+手機開發筆記

 

24

二月

2009

解決IE6/Google Chrome無法搜尋中文問題 PDF 列印 E-mail
Joomla! - 開發技術
作者是 EddyChang   

Tags: joomla1.5 | 修改

在IE6(Internet Explorer 6)中,當使用搜尋功能時(例如搜尋「中文字」,網址會變成如下,UTF-8的「中文字」轉成「銝剜?摮」,然後無法進行搜尋的功能。 在Firefox 3.0.5中是可以正常進行搜尋功能,Firefox會自動轉碼:
component/search/%E4%B8%AD%E6%96%87%E5%AD%97/?ordering=newest&searchphrase=all
在IE7中是可以正常進行搜尋功能,IE7不會自動轉碼,但還是正常:
component/search/中文字/?ordering=&searchphrase=all
Google Chrome的搜尋也會出錯
component/search/%E4%B8%AD%E6?%E5%AD??ordering=newest&searchphrase=all

解決之法如下

 

修改/libraries/joomla/environment/uri.php的第347行左右的toString函式在 之前加入

$query=str_replace("%2F", "/", urlencode($query)); 
$query=str_replace("%3D", "=", $query);
$query=str_replace("%26", "&", $query); 
目的是讓$query的字串如果出現中文時,會先作urlencode,這樣在IE6或Google Chrome中的中文搜尋都可以正常運作了。
評論
發表新評論 RSS
發表評論
姓名:
E-mail:
 
標題:
UBBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
:D:):(
:0:shock::confused:
8):lol::x
:P:oops::cry:
:evil::twisted::roll:
:wink::!::?:
:idea::arrow:
 
請輸入圖片上顯示的驗證碼.

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."