根据我的经验php与mysql中出现乱码一般都是文档编码的问题如 gbk,uft8,gb2312等与页面编码不一致.
解决1:php.ini没有extension=php_mysql.dll
碰到这个问题后一般打开phpmyadmin就会出现乱码错误,我们把php里面的libmysql.dll复制到c:\windows\system32或者c:\winnt\system32,然后重新启动电脑就行
解决2:下面是我的修改过程:
打开 phpMyAdmin 根目录中 libraries/select_lang.lib.php 文件;找到:'zh-gb2312' => array('zh|chinese simplified', 'chinese_simplified-gb2312', 'zh', '中文'),将其改为:'zh-gb2312-utf-8' => array('zh|chinese simplified-UTF8', 'chinese_simplified-gb2312', 'zh', '中文'),再找到:'gb2312' => 'gb2312',将其改为:'gb2312' => 'latin1',保存文件退出。
然后从浏览器打开 phpMyAdmin ,在首页选择 Language 为:中文 -Chinese simplified-UTF8,然后打开数据表看看里面的中文是不是已经可以正常显示了:)
解决三:Mysql中的表默认是使用latin1编码的,但内容如果是通过mysql命令等进行添加操作,一般都是gb2312编码插入的,直接在phpmyadmin上 使用语言:中文 - Chinese simplified 下查看是乱码
一、打开 libraries/select_lang.lib.php,查找 $available_languages 数组,在其最后添加一项数据:
Php代码
二、再搜索 $mysql_charset_map 找到这个数组,将其中的一项值 'gb2312' => 'gb2312' 改成 'gb2312' => 'latin1'。
三、重新打开phpmyadmin。语言选择 中文 - Chinese simplified latin1,这时再打开latin1编码的表,就可以看到乱码已经不在了.