在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這一個文件里的兩個字就行,比較方便快捷,哈哈。
新聞熱點
疑難解答