php 读取mysql中文乱码——Navicat窗口界面的坑

记一次从终端到服务端编码都统一但还是出现中文乱码的问题。

情景是这样的我用Navicat的窗口界面添加了中文的数据,但php读取出来后出现了乱码。

首先先排除客户端这边,各种编码定义都已经完善:

头声明:<meta charset="UTF-8">

php头:header("Content-Type: text/html; charset=UTF-8");

语句前的设置:

mysql_query("set names 'utf8' ");
mysql_query("set character_set_client=utf8");
mysql_query("set character_set_results=utf8");

 

排除完后继续数据写入这边Navicat编码的层层排除

连接属性:

数据库属性:

表编码:

字段编码:

 

查一遍连接等设置:

 

mysql的配置、Apache的配置、php的配置,各种看,

各种查完之后还是乱码。

 

最后的检查插入过程是否有问题:

通过php和navicat的sql语句插入中文,之后php读取显示正常。

再在navicat中用sql语句读取,发现用窗口界面录入的数据是乱码,sql插入的数据正常。

 

这是navicat的问题,以后不要用Navicat窗口界面(点击一个表直接显示的那个界面)修改添加数据。

但可以在Navicat查询出的数据界面修改,

先修改编码,用sql语句查询,查询出来后,再在界面中增删改查就没问题了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值