插入数据库中的中文为乱码
插入进去后 数据库中的中文是乱码 这时候怎么办
插入进去后 数据库中的中文是乱码 这时候怎么办
2016-07-24
出现乱码一般是两种情况:
1.mysql表的编码问题:
查看步骤:打开mysql -> 进入数据库 -> 输入 show create table 表名(填表名)->看看DEFAULT CHARSET 是不是utf8
不是的话,可以通过以下两种途径进行修改:
1>alter table 表名 character set utf8
2>用phpMyadmin进入数据库 ->进入表 ->点击结构 -> 点击修改 -> 在排序规则那一栏改为utf8_general_ci
是utf-8的话,先看看是表中的数据是否乱码,如果是乱码了,就重新创建吧,创建database的时候在最后加上ENGINE=InnoDB DEFAULT CHARSET=utf8 就好了
2.浏览器编码问题。我这里列举Chrome的设置编码的方法。
点击右上角三条横线 -> 更多工具 -> 编码 -> 点击自动检测,点击UTF-8
最后,如果你发现,
1.你数据库没有问题,
你可以通过 show variables like 'char%';命令查看
2.浏览器也没有问题,
3.PHP以UTF-8的方式发送查询,而且写入(insert)数据库的时候乱码了
4.可以试试,先设置在mysql的编码 SET NAMES 'utf8';
举报