php 到数据库乱码怎么解决方法,php数据库乱码解决方法

本文详细介绍了解决PHP数据库乱码问题的方法,包括HTML编码设置、数据库连接设置为UTF-8、创建表时设置Collation为utf8-general-ci,并强调了编码一致性在避免乱码中的关键作用。适合PHP开发者参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

php数据库乱码解决方法

发布时间:2020-05-20 10:21:44

来源:亿速云

阅读:146

作者:Leah

今天小编就为大家带来一篇介绍php数据库乱码解决方法的文章。小编觉得挺实用的,为此分享给大家做个参考。一起跟随小编过来看看吧。

1、在html代码中加上这句:

,这个来定义网页的编码,在连接数据库,选择具体数据库后,用mysql_qurry(“set names utf8”);来设置数据库的编码和html编码一致。用的是zend studio开发环境,开发环境也有其代码显示的编码,所以也要改成utf8格式。另外一个就是在创建数据库表的时候也是很关键的,例如在phpMyAdmin数据库中,创建一张tb_product表时候:也要设置里面字段的编码方式,多说无用,看图1吧: 在中下位置将Collation设置为utf8-general-ci编码

5a2db7655faee8e5cee70537a05e3206.png

图1

84589547a4bfb87557a88f2525d9d589.png

图2

2、要是创建表的时候忘记设置这个属性了,也不用担心,还有方法,首先选择要修改属性的表,点击Operations修改其属性,同时可以勾上changeall column这个,确定即可,如图2所示.为了进一步保证不出现乱码,还可以对 该表中的某些字段或者所以字段分别添加utf8-general-ci。具体操作:点击需要修改的表(tb_product)->Structure->check all->change,然后再单独设置每个字段的Collation。如图3所示.

58a89dde4a34c0cb207c3aa06ffb15b9.png

图3

注意:要是没对整个表选择编码为utf8-general-ci,而只是对表中的某些字段设置成utf8-general-ci格式,通过Operation查看表的属性,还是会看到整个表的编码为:如gbk-chinese-ci这种格式的话,如果Html编码是utf8,那还是会出现乱码的,所以最关键的是对整个表的Collation设置为utf8-general-ci。如图4和图5,图4中虽然pro_name和pro_producer看起来是utf8-general-ci编码,可是通过查看整个表的编码还是如gbk格式,编码不一致,所以很可能在表中还是会出现乱码。

好了,总结一下,长话短说,四点:

1、  如在zend studio中编写php,html代码,首先将创建的工程的显示编码格式为utf8格式;

2、  在html中使用要编写的网页显示的编码格式;

3、  连接数据库的时候在选择某个数据库后(不是表)使用mysql_qurry(“set names utf8”);

4、  就是上面提到的创建数据库的时候将整个表的编码格式设置为utf8-general-ci。

a83101e4c77a2335545bd4f876285f33.png

图4

b08598c4b10c51be466f859671d788f1.png

以上就是php数据库乱码解决方法的详细内容了,看完之后是否有所收获呢?如果想了解更多相关内容,欢迎关注亿速云行业资讯!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值