PHP+MySQL 亂碼嗎??!!
有使用MySQL版本 4.1.x 之後的人應該都會遇到亂碼的問題,最近豆子用PHP寫了一支程式並抓取MySQL裡的DATA,但是以往在phpMyAdmin或是用PHP抓取或編輯中文DATA時都是正常的。但是這次首先在phpMyAdmin寫入資料時遇到亂碼。豆子解決的方式就是將table的編碼改成 "utf8_general_ci",之後在phpMyAdmin 瀏覽中文就正常了。
解決了上述的問題後,發現連php所讀出來的DATA依舊是亂碼,用google查了一下,發現在進行mysql query之前加上以下的程式碼,亂碼的情形也就解決了。雖然不知道這是否是正統的解決方法,anyway,我的問題解決了~~
$result =mysql_query("SET NAMES big5");
[20121114 - 更新]
若資料庫的編碼與網頁的編碼都已經使用UTF8,那麼程式當然要修正為utf8:
$result =mysql_query("SET NAMES utf8");
如果檢查過一切檔案及連線
還是不行的話可以再增加二行連線資訊
mysql_query('SET CHARACTER_SET_CLIENT=utf8'); mysql_query('SET CHARACTER_SET_RESULTS=utf8');
近期迴響