进入你的msql,查看编码设置:
show variables like "%char%";
然后 根据需要执行:
SET character_set_client='utf8';
SET character_set_connection='utf8';
SET character_set_results='utf8';
set character_set_server="utf8";
再次查看,就可以看到设置成功了:
然后再检查你数据库的编码:
执行: show create database mydb; (可以看到我数据库的编码式 latin1);
接着,设置你数据库的编码方式(注意把数据库名称改成你自己的):
执行: ALTER DATABASE `mydb` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
接着查看你的数据库的编码方式:
执行: show create database mydb; (可以看到已经改过来了)
接着:查看你的表格的编码方式(注意:把表名改成你自己的):
执行: show create table student;
如果表的编码方式不是utf-8,你可以执行:
ALTER table `student` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
最后,应该能够成功了.如果还出现乱码,可以去数据库中查看:
比如我用wampserver的phpMyAdmin,就可以去查看表的结构信息(忽略谷歌浏览器的英文翻译 -_-!! ),
最后 : html中设置编码方式(一般自动生成):
<meta charset="UTF-8">
php中也同样:
header("Content-Type: text/html;charset=utf-8");
大部分人估计上边的设置完了,乱码就能解决了,但是,我的还是这样(php中):
于是去修改my.ini,
一开始在[mysqld]添加: default-character-set = utf8, 但是wampsever重启报错了! 于是我删掉了,然后添加:
[mysqld]下default-character-set = utf8
哈哈!乱码成功解决了!
登录 | 立即注册