昨天配置好环境,也配置好phpmyadmin 2.9.1.1,今天还原数据库的时候发现了,数据显示是乱码,上网找了一个资料,最后解决如下:
修改:phpMyAdmin\libraries\select_lang.lib.php文件:
$available_languages = array(
...
'zhtw-big5' => array('zh[-_](tw|hk)|chinese traditional', 'chinese_traditional-big5', 'zh-TW', '中文'),
'zhtw-utf-8' => array('zh[-_](tw|hk)|chinese traditional', 'chinese_traditional-utf-8', 'zh-TW', '中文'),
'zh-gb2312-utf-8' => array('zh|chinese simplified GB2312', 'chinese_simplified-gb2312', 'zh', '中文'),
'zh-utf-8' => array('zh|chinese simplified UTF-8', 'chinese_simplified-utf-8', 'zh', '中文'),
);
// MySQL charsets map
$mysql_charset_map = array(
'big5' => 'big5',
'cp-866' => 'cp866',
'euc-jp' => 'ujis',
'euc-kr' => 'euckr',
'gb2312' => 'latin1',
'gbk' => 'gbk',
'iso-8859-1' => 'latin1',
'iso-8859-2' => 'latin2',
'iso-8859-7' => 'greek',
'iso-8859-8' => 'hebrew',
'iso-8859-8-i' => 'hebrew',
'iso-8859-9' => 'latin5',
'iso-8859-13' => 'latin7',
'iso-8859-15' => 'latin1',
'koi8-r' => 'koi8r',
'shift_jis' => 'sjis',
'tis-620' => 'tis620',
'utf-8' => 'latin1',
'windows-1250' => 'cp1250',
'windows-1251' => 'cp1251',
'windows-1252' => 'latin1',
'windows-1256' => 'cp1256',
'windows-1257' => 'cp1257',
);
上述中的'utf-8'和'gb2312'具体要指向什么,是由数据库的编码的决定的。具体的值可以看数据库表时“整理”那一列的值。在我的环境中这个值是“latin1_swedish_ci”,所以改为latin1。