小弟在安裝新版的CPG 1.4.6 遭遇到中文問題. 經過一兩小時的測試
找到正確的解決方式.
很多網友喜歡用 AppServ 或類似套件安裝MySQL+Apache+PHP環境.
由於不是所有套件都可正確設定MySQL, 讓它真正使用utf-8與Client溝通.
因此安裝之後有亂碼出現. 我也有切身之痛, 因此寫這篇文章. 希望大家可以快速解決問題
希望快速解決問題的網友, 可直接跳到 [解決方法].
[安裝過程]我的環境如下
Windows XP SP2. Appserv 2.4.5 , CPG1.4.6 (後面兩者都是2006.06.02下載的)
在整個安裝過程中, 跟編碼相關設定如下
1. MySQL安裝
我在安裝MySQL的時候(Appserv套件), Charset選項只有big5 , ( ps. 沒有utf-8 !!)
因此選了big5. 見下圖

AppServ裝好之後. 我用phpMyAdmin新增了一個資料庫給CPG用. 新增時指定的編碼是utf-8 , 見下圖.

2. CPG1.4.6安裝
安裝後. 我出現一個問題. CPG程式本身的中文沒問題
但是我測試新增一個相簿叫 "許功蓋餐", 儲存到MySQL的中文卻是亂碼, 見下圖

打開設定, 確認CPG1.4.6的設定是 繁體中文 跟 utf-8 編碼 (預設. 我沒更改)
我有跑到phpMyAdmin裡面看, cpg146_albums表格的title確實儲存了亂碼
看到站上好像也有網友出現類似問題, 但這不太合理.. 奇怪
後來, 我嘗試餵 utf-8 字元給MySQL.
(查詢中文字的 utf8 編碼
http://code.cside.com/3rdpage/us/unicode/converter.html )
執行以下SQL , 代表新增一個相簿. 名稱為 "許公蓋餐", 相簿描述是 "測試"

結果. CPG1.4.6可以正確顯示. 見下圖

這結果讓我確定CPG1.4.6確實可以讀取 utf-8 編碼的MySQL.
應該是MySQL設定有什麼問題.
[解決方法]Google了一下之後發現, 要設定 C:\Windows\my.ini 檔案.
指定MySQL的 "預設編碼".
原來我使用的 AppServ套件, 在安裝過程有瑕疵 , 它並沒有utf8的選項
需要安裝過後, 再自己去修改 my.ini 檔案
使用MySQL 4.1以上版本的網友 , 要設定 my.ini 檔案,
這樣MySQL才真的是優先使用utf-8編碼
[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8

經過此my.ini 修改 ,
記得重新開機 , 就可正確使用中文了.