网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

php数据库传输乱码 php写入数据库中文乱码

用PHP从数据库中取出的中文是乱码,怎么处理能使中文正常显示?

数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。

成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、成都网站制作、容城网络推广、成都微信小程序、容城网络营销、容城企业策划、容城品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联公司为所有大学生创业者提供容城建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

事实上MYSQL配置文件my.ini中定义了2个默认编码,分别是[client]里的default-character-set和[mysqld]里的default-character-set来分别设定默认时候客户端连接和数据库内部所采用的编码。上面指定的编码其实是MYSQL客户端连接服务器时候的命令行参数character_set_client,来告诉MYSQL服务器接受到的客户端数据是什么编码的,而不是采用默认编码。

转自:

php数据库中文乱码是怎么造成的?

确保三码合一就可以了..

第一个是数据库的字符集

第二个就是存进去的时候字符集

第三个就是显示的时候的字符集

这三个都有可能造成乱码;

第一个 举例是:如果你插入的时候用的是GB2312 ,但你表中的default charset是utf8 那么,就有可能乱码了.

第二种情况就是你插入正确 但你查询的时候以UTF8查询出来,但你在HTML页面里设置编码如果非UTF8那么也有可能造成乱码.

有关PHP 数据库乱码的问题

按以下步骤检查处理。

(1)HTML编码指定是否正确?检查head段中是否包含以下

meta

http-equiv="Content-type"

content="text/html;

charset=utf-8"

/

(2)检查HTML文件本身的编码有无问题。

(3)查询数据库之前设置编码。

$sql

=

"set

names

utf8";

mysql_query($sql,$local_conn);

(4)检查数据库编码及数据表及字段编码是否均为UTF8。注意,数据库编码及表编码及字段编码不是一个概念。

我PHP设置的是UTF-8,数据库设置的是UTF8-general-ci,从页面发送数据给数据库后数据库显示的是乱码是为啥

试试把下面类似语句放到连接语句之后

mysql_query("SET NAMES UTF8");

或 PDO

$dbh-exe("SET NAMES UTF8");

用 SET NAMES UTF8 校正一下连接编码

因为PHP 连接数据库的过程中会经过三次编码转换,比如输出的的时候

MySql Server(UTF-8) - PHP Connection( Latin1) - UTF8页面的Result(UTF-8) 这时两种编码不兼容则产生乱码。


本文题目:php数据库传输乱码 php写入数据库中文乱码
网页URL:http://bjjierui.cn/article/doigsho.html

其他资讯