中文乱码问题

在一次实践中自己遇到中文乱码的解决流程


主要是html前端页面,php文件,mysql三者编码的统一


1、显示数据库当前字符集  show variables like "%char%";

若不统一,可以set names utf8;

2、show create table tb_name查看表和字段的编码

将其都设置为utf8

3、都统一后直接使用dos插入中文却出现问题,直接无法插入中文

但是在没有更改php文件编码以及php代码的情况下(此时php文件编码是gbk,并且mysql_set_charset("gbk")),

网页页面上直接添加是成功无乱码的。

4、网上查找原因

“我们用的windows是中文的,那么dos的输入输出也就是GB2312的编码,而你在mysql里设置为utf8,

所以mysql会把dos的gb2312的字符当做utf8来处理,所以会出现问题。那么我们不能改dos的字符处理编码,就只能

将mysql改为gb2312或者gbk了”

5、了解原因后,不再从dos里输入

6、把php文件编码换成utf8(zend studio->edit->set encoding)

7、把浏览器的显示编码设置成utf8

8、把php的header里的charset设置为utf-8

9、<meta>里的编码设置为utf-8

10、php连接数据库时的mysql_set_charset设置为utf8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值