2008/02/12 更新----------
有鑑於許多人求檔, 在回應處有發佈永久連結, 但是似乎還是有人沒看到XD, 所以在此發佈永久連結位址, 又免於被人盜連, 採取註冊後方能下傳, 如有不便, 敬請見諒!!
EQDKP 1.3.2繁化版永久位址:
http://520net.to/viewthread.php?tid=5&extra=page%3D1
-------------------------
昨天搞了一晚上的Apache::ASP...已經順利成功了..但是卻卡到昨天提到的FSDKP..是使用MDB的資料庫..所以~~~~全部白費工了.....
後來還是只得乖乖的前往 EQDKP 下載來裝了...目前版本是1.3.2....安裝時..還是跟以前一樣, 不提供繁體版, Chinese是GB-2321...鳴鳴..繁體台灣又被忽略了..可怒也...馬上動手來改中文繁體版EQDKP 1.3.2......
首先..先下載新版的EQDKP 1.3.2 並解壓縮...
再來利用 convertZ 來將整個目錄內檔案統一轉檔...請記得要進入[進階]選項..修改成 GBK --> UTF-8 喔...另外存成一個新的安裝檔案目錄..
接下來在 /language/chinese裡的兩個檔案..其中一個 lang_main.php 會因為字碼誤判造成程式宣告變量部份沒有結束引號...要一個一個修改回來..順便把兩個檔裡不通順的意思改一下..這就要花點時間了..我是沒有改的啦...以下提供我改好的版本...
改好之後...我很高興的打開開始安裝..結果..沒想到...語系選到Chinese時..居然變成的了亂碼....META宣告經查看沒有錯..但是瀏覽器的編碼居然是ISO....嗯..這個我經過測試了檔案儲存編碼方式及APACHE編碼設置等等..一直都找不到答案..所有的資料也都是叫大家去改httpd.conf的設定..但是我想可能不是因為這樣..在我的認知下...伺服器端的碼決定..是 httpd.conf 大於 .htaccess 大於 META標籤, 所以送出是UTF-8沒錯...但是我們通常都忽略了Client端的設定, 大家是否知道..如果使用者端瀏覽器設定為自動選取, 就會變成編碼會使用"使用者個人喜好"...變成要去找Cookie的問題了喔..如果不懂..下次再教..
當下就去找了主要檔案...(用了大量的搜尋找出header配置 for Cookie)...最後在 includes/eqdkp.php及includes/functions.php裡被我找到了...請依如下更改..
includes/eqdkp.php 原來為
================================================
if ( defined('NO_CACHE') )
{
@header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
@header('Last-Modified: ' . $now);
@header('Cache-Control: no-store, no-cache, must-revalidate');
@header('Cache-Control: post-check=0, pre-check=0', false);
@header('Pragma: no-cache');
@header('Content-Type: text/html; charset=iso-8859-1');
}
else
{
@header('Last-Modified: ' . $now);
@header('Content-Type: text/html; charset=iso-8859-1');
}
================================================
改成如下:
================================================
if ( defined('NO_CACHE') )
{
@header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
@header('Last-Modified: ' . $now);
@header('Cache-Control: no-store, no-cache, must-revalidate');
@header('Cache-Control: post-check=0, pre-check=0', false);
@header('Pragma: no-cache');
@header('Content-Type: text/html; charset={ENCODING}');
//@header('Content-Type: text/html; charset=iso-8859-1');
}
else
{
@header('Last-Modified: ' . $now);
@header('Content-Type: text/html; charset={ENCODING}');
//@header('Content-Type: text/html; charset=iso-8859-1');
}
================================================
再來是
includes/function.php 原先為
================================================
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta http-equiv="refresh" content="0; url=' . $location .'"><title>Redirect</title></head>';
echo '<body><div align="center">If your browser does not support meta redirection, please click <a href="' . $location . '">here</a> to be redirected</div></body></html>';
================================================
修改成如下
================================================
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset={ENCODING}"><meta http-equiv="refresh" content="0; url=' . $location .'"><title>Redirect</title></head>';
echo '<body><div align="center">If your browser does not support meta redirection, please click <a href="' . $location . '">here</a> to be redirected</div></body></html>';
================================================
至於為什麼要改成{ENCDEING}呢...這是因為我只提供UTF-8的檔案編碼..就算用英文語系..一樣可以用..所以我讓語系檔自己決定..在 language/chinese 裡的兩個語系檔最上面是否有注意到有這個設定項了呢...^^
$lang['ENCODING'] = 'UTF-8';
$lang['XML_LANG'] = 'tw';
好了...再傳上去..再review一次...是不是中文化了呢...呵呵..
以下提供完整的安裝包供需要的人使用...不用太感謝我..因為根本沒做到什麼複雜的事..= ="
EQDKP 1.3.2f Tradition Chinese(utf-8) + Itemstats1.5 2007/11/07 連結更新^^
歡迎大家多多利用
補充說明:
接下來在輸入資料時..發現中文字部份都會變亂碼..在經驗之下..立即想到是MySQL的連接編碼沒改..
到 /dbal/mysql.php 裡找到以下資料..加上一條QUERY..命令連接編碼設定為utf-8即可解決!!
/dbal/mysql.php
=============================================
if ( (is_resource($this->link_id)) && (!is_null($this->link_id)) && ($this->dbname != '') )
=============================================
修改成
=============================================
mysql_query("SET NAMES 'utf8'");
if ( (is_resource($this->link_id)) && (!is_null($this->link_id)) && ($this->dbname != '') )
=============================================
最後把之前輸入的資料清掉..再重新輸入...是否就正常了呢..^^
展示站台:
主站台 : 不悔 @ 巴那札爾
DKP站 : 不悔DKP @ Gruul's Lair




