解決
phpMyAdmin資料亂碼問題 最近裝了MySQL 5.0後再把4.3.6的資料表放進data檔案夾裡邊後,再到
phpmyadmin裡邊一看全是亂碼,後重新看了mysql 5.0的手冊,發現加了幾個character_set_%,不過改了N^2次還是沒能搞定,但是用PHP程式select出來的卻又是正常的.問題就是
PHPMyadmin的問題了..
在phpMyAdmin2.6以上版本因為支援多語言集,弄得我們使用phpMyAdmin管理資料庫的時候,查詢出來的中文都是亂碼,但是在我們的PHP程式調用時卻沒有這些問題。
看來是phpMyAdmin2.6的配置有問題了,為瞭解決這個問題,我上google上搜尋了相關資料,這類的問題很多,但沒一個可以解決的,真是沒辦法,看來只有自己動手解決了。。。。由於尋找原始碼過程非常煩瑣,略最終花了半天的時間,總算找到了一個比較折衷的方法來解決。去phpMyAdmin2.6的根目錄下,開啟以下這個檔案:libraries/select_lang.lib.php
1、找到有"zh-gb2312"的那一行,把'zh-gb2312' 改成 'zh-gb2312-utf-8'為什麼這樣加?那是因為伺服器會把沒有"-utf-8"的語言過濾掉,在libraries/database_interface.lib.php 第168行,根據英文說:“為了防止混淆”,:<或者如果不把'zh-gb2312' 改成 'zh-gb2312-utf-8',可以去掉過濾吧。把那個if去掉就OK了。
2、找到"$mysql_charset_map = array("那一行把'gb2312' => 'gb2312',改成 'gb2312' => 'latin1',儲存,OK,在進入phpMyAdmin管理,選擇語言chinese simplified(zh-gb2312-utf-8)再看看你的那些中文資料。
所以說,我的這個解決辦法就只是修改libraries/select_lang.lib.php這一個檔案裡的兩個字就行,比較方便快捷,哈哈。