新鲜、有趣,互联生活。令狐葱。

2007/05/27

解决php读写mysql 中文乱码问题

今天碰到一个十分棘手的问题,就是在往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 'UTF8'");

然后我用MySql Query Browser 打开Table,选择Edit Table,选择需要设置字符集的字段,然后在Column Details 里面将Column Charset选择为utf8,Apply Changes,即可。

没有评论: