JDP 發表於 2006-3-29 18:25:20

phpMyAdmin 看utf-8亂碼的問題

我想很多人都碰到這個問題, 在DreamHost上使用phpMyAdmin管理MySQL資料庫時看到的資料庫內容都是亂碼, 或是備份再回傳之後整個網站都變成亂碼, 尤其是在網站換主機商(搬家)的時後才發現這個問題最令人頭痛.

其實不只是DreamHost有這個問題, 只要是用MySQL 4.1以後的版本都有可能會碰到這個問題, 跟那個主機商無關, 也跟你用的架站軟體關係不大.

詳細的原因這邊就不在解釋, 有興趣的用Google找找不難找到, 這邊提供一個"偷吃步"的解決方案. 此法適用於big5或utf-8編碼的網站, 任何架站軟體都通用.

詳細步驟:

1. 按這邊下載phpMyAdmin 2.8.0-beta1

2. 解壓縮

3. 打開phpMyAdmin280b1/config.inc.php, 做下列更改:

   第57行:$cfg['Servers'][$i]['host']          = 'localhost'; // MySQL hostname or IP address把localhost改成你的MySQL主機位置, 也就是 DB Hostname:
   第72行:$cfg['Servers'][$i]['user']          = 'root';      // MySQL user把root改成你的MySQL資料庫的使用者名稱, 也就是 DB Username:
   第73行:$cfg['Servers'][$i]['password']      = '';          // MySQL password (only needed在''中間填入你的MySQL資料庫的密碼, 也就是 DB Password:

3. 改好後整個目錄上傳到你的網站的目錄下

4. 用你的瀏覽器連到 http://你的網址/phpMyAdmin280b1 應該就可以看到你的MySQL資料庫的內容顯示正常的中文而不是亂碼了.

註解:

1. 這並不是啥特別版本的phpMyAdmin, 跟原來官方版本的差別只有我把phpMyAdmin280b1/libraries/select_lang.lib.php 這個檔案改過

   第353行:'big5'         => 'big5',改成 'big5'         => 'latin1',
   第370行:'utf-8'      => 'utf-8',改成 'utf-8'      => 'latin1',

如果自己已經有裝phpMyAdmin的也可以自己改.

2. 注意: phpMyAdmin本身並沒有保護機制, 請用主機商控制台裡面的功能將phpMyAdmin的目錄用密碼保護起來, 或是將config.inc.php裡面的密碼刪除, 要用的時後再填上去

3. 此法也可解決使用phpMyAdmin備份後回存亂碼的問題.

4. 此法僅在DreamHost主機上做過測試, 一切正常, 歡迎使用其它主機商的朋友回報測試結果.

製作: DEAL13主機情報站
頁: [1]
查看完整版本: phpMyAdmin 看utf-8亂碼的問題