PHP+MySQL 亂碼嗎??!!

phpmyadmin的編碼

有使用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');

您可能也會喜歡…

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *