phpmyadmin界面乱码
效果如我们的中文表都是乱码了(注意:我使用的是国外的linux空间了,使用国内的没问题)
出现这个问题我们一可以不使用国外主机现成的phpmyadmin了,我们自己下载一个phpmyadmin上传上去,这样一般可以解决问题,如果不行我们参考下面办法
phpmyadmin乱码解决
1. 因为MySQL的默认编码是latin1,所以首先我们需要修改一下PHPMyAdmin的编码转换。修改libraries目录下面的select_lang.lib.php文件,将
代码如下 | 复制代码 |
[indent] 'utf-8' => 'utf8', 修改成 'utf-8' => 'latin1', [/indent] |
2. 接下来还要修改一下页面的编码显示,将
代码如下 | 复制代码 |
[indent] 'zh-gb2312' => array('zh|chinese simplified', 'chinese_simplified-gb2312', 'zh'), 修改成 'zh-gb2312-utf-8' => array('zh|chinese simplified', 'chinese_simplified-gb2312', 'zh'), [/indent] |
也就是在zh-gb2312后面增加-utf-8,这样页面编码就支持UTF-8了。
3. 首先选择zh-gb2312-utf-8进入PHPMyAdmin,这个时候浏览GB2312编码的数据正常,但是浏览UTF-8的数据是乱码。如果浏览UTF-8的数据的话,进入首页,然后在Language里面选择zh-utf-8就可以了
php页面中文乱码
如果是程序页面错误我们可参考一面方法
数据库中,所有表和有中文的字段指定使用编码:utf8_unicode_ci,注意表和字段都需要指定!
:数据库连接的时候指定编码:
代码如下 | 复制代码 |
mysqli_query($db_conn, "SET NAMES utf8");//指定脚本到数据库的编码 mysqli_query($db_conn, "set character_set_client=utf8"); //指定mysql内部的数据到磁盘编码 mysqli_query($db_conn, "set character_set_connection=utf8");//指定mysql的连接层编码 mysqli_query($db_conn, "set character_set_results=utf8");//指定mysql查询磁盘到数据结果的编码 |
这样页面问题也就解决了