PHP向MYSQL插入中文乱码问题解决方法

在写数据库插入的时候输入中文,在数据库中显示为乱码或空?

为什么呢? 

  因为字符编码的不统一。

解决方法:

首先确定你各部分的编码。

mysql编码查询:

在你的mysql的安装目录下有个bin文件夹,点开里面的mysql.exe 就进入了控制台。

输入控制台代码    show variables like '%character_set_%';  回车,

就会显示如图155955_9KmX_1029302.png

从上图中可以看到 MySQL 有六处使用了字符集,分别为:client 、connection、database、results、server 、system。其中与服务器端相关:database、server、system(永远无法修改,就是utf-8);与客户端相关:connection、client、results 。

在 MySQL 的安装目录下有一个 my.ini 配置文件,通过修改这个配置文件可以一劳永逸的解决乱码问题。在这个配置文件中 [mysql] 与客户端配置相关,[mysqld] 与服务器配置相关。默认配置如下:

  • [mysql]

  • default-character-set=utf8

  • [mysqld]

  • character-set-server=utf8

这时只需要将下的默认编码 default-character-set=utf8 改为 default-character-set=gbk ,重新启动 MySQL 服务即可。

然后还要确定PHP的编码是UTF8。

最后要确定你输入的数据的编码,只需要在你的输入页面的页头加上

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

编码就变UTF8了。

这个时候编码就同一了,就不会出现乱码,为空的现象了~ OY!




转载于:https://my.oschina.net/u/812141/blog/208996

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值