我用的是1.7.2版本的,mysql的配置文件是C:\xampp\mysql\bin\my.ini,因为网页设置的字符是gbk的,所以想把数据库字符集也设置成gbk的,于是乎:
[client]
default-character-set=gbk
[mysqld]
default-character-set=gbk
这样重启mysql后,执行show variables like ‘character%’,得到结果是database和server编码改成了gbk,但client和connection都还是没变.
这样后,不管是用mysql的客户端还是php连接,得到的都是乱码了。
有人遇到过这个问题吗?

解决方案 »

  1.   

    php客户端连接编码应该用的connection,connection应该要改成gbk的,都改成gbk的就应该没问题了,或者在php程序中设置编码和数据库一样的编码;
      

  2.   

    谢谢楼上的,刚才我搞定了。
    也明白了几件事情:
    一是乱码问题跟mysql没有关系,网上所谓的修改
    [client]
    default-character-set=gbk
    [mysqld]
    default-character-set=gbk
    都用不着,mysql默认的即可。
    二是浏览器是根据<meta http-equiv="Content-Type" content="text/html; charset=gbk">来选择想要的编码。
    三是,整个过程,gbk这个词组,就出现在<meta http-equiv="Content-Type" content="text/html; charset=gbk">这句中就可以了。什么查询的时候 还set names gbk就是一坨狗屎。
      

  3.   

    http://blog.csdn.net/ACMAIN_CHM/archive/2009/05/12/4174186.aspx
    MySQL 中文显示乱码