PHP读MYSQL中文乱码的快速解决方法

发布时间:2025-12-09 14:48:47 浏览次数:4

打算切换某个网站的主机,没想到遇到Php和Mysql中文乱码的问题。

以前的国外主机用的Mysql是4.x系列的,感觉还比较好,都无论GBK和UTF-8都没有乱码,没想到新的主机的Mysql是5.0版本的,导入数据后,用Php读出来全是问号,乱码一片,记得我以前也曾经有过一次切换出现乱码的经验,原因肯定是Mysql版本之间的差异问题。

只好查资料,发现了一个解决方法,就是在mysql_connect后面加一句SET

NAMES

UTF8,即可使得UTF8的数据库消除乱码,对于GBK的数据库则使用SET

NAMES

GBK,代码如下:

$mysql_mylink

=

mysql_connect($mysql_host,

$mysql_user,

$mysql_pass)

mysql_query("SET

NAMES

'GBK'")

数据载入的时候是乱码还是正常,是从别人机器上导出数据自己恢复的吗?

查看下数据库的字符集编码,show

vaiables

like

'%char%'

查看下字符集

使用下latin1

因为他是默认的

,不行就把数据库删了重新建立在导入数据

保证文件的编码,浏览器解析编码。数据库数据输出编码一致就可以了。先把mysql的数据库编码设为utf8。

另存为保存文件编码为utf8

使用header("content-type:text/htmlcharset=utf-8")或者<meta http-equiv="content-type" content="text/htmlcharset=utf-8" />告诉浏览器解析文件的编码

数据输出前  mysql_query("set names utf8")将数据库输出到网页中的编码设为utf8.


需要做网站?需要网络推广?欢迎咨询客户经理 13272073477