我用都是PHP5.2和MYSQL5.0.51b-community-nt,以及PHPMYADMIN 3.1
页面CHARSET是UTF8
可以在PHP程序中插入或浏览数据,都是正常,无乱码
但是我想通过MYSQL 命令行或者PHPMYADMIN手动插入中文数据就都是乱码以下三项我全做了:
1、MYSQL中所有的数据库和数据表,默认字符集、COLLATION均为utf8; 且所有MYSQL变量也是:
mysql> show variables like 'character_set%';
+--------------------------+------------------------------------+
| Variable_name            | Value                              |
+--------------------------+------------------------------------+
| character_set_client     | utf8                               |
| character_set_connection | utf8                               |
| character_set_database   | utf8                               |
| character_set_filesystem | binary                             |
| character_set_results    | utf8                               |
| character_set_server     | utf8                               |
| character_set_system     | utf8                               |
| character_sets_dir       | C:\software\mysql5\share\charsets\ |
+--------------------------+------------------------------------+mysql> show create table account;
| account | CREATE TABLE `account` (
  `user` varchar(30) collate utf8_bin NOT NULL,
  `password` varchar(30) NOT NULL,
  `email` varchar(50) default NULL,
  `name` varchar(100) character set utf8 NOT NULL,
  `verification` varchar(20)  default NULL,
  `membership` tinyint(4) default NULL,
  UNIQUE KEY `user` (`user`),
  UNIQUE KEY `email` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin |2、通过UTF-8编码发送查询
3、连接数据库后立刻   SET   NAMES   'utf8 '(PS:如果SET NAMES 'GBK',插入的东西在命令行或PHPMYADMIN倒是可以正常显示,在网页中就是乱码)结果仍然是,页面的输入输出正常,但在phpmyadmin里浏览就是不正常,而通过phpmyadmin插入的,在页面上显示又不正常了!
网络上的文章搜了一大圈,没一个好用的。
有没有谁遇到过类似的问题并解决了?

解决方案 »

  1.   

    此外,有没有替代PHPMYADMIN的不会出现乱码的MYSQL后台工具?(听过MYSQL FRONT也会乱码)
      

  2.   

    PS:如果SET NAMES 'GBK',插入的东西在命令行或PHPMYADMIN倒是可以正常显示,在网页中就是乱码这个就是你网页编码的问题了。
      

  3.   

    说了,不是网页的问题。
    请你再看清我的提问!
    网页内容一切正常!是命令行和PHPMYADMIN乱码!
      

  4.   

    (PS:如果SET NAMES 'GBK',插入的东西在命令行或PHPMYADMIN倒是可以正常显示,在网页中就是乱码)这个是你说的吧? 
      

  5.   

    不好意思,可能写错了。SET NAMES GBK,显示仍然是乱码
    =====================================================================================
    (PS:如果SET NAMES 'GBK',插入的东西在命令行或PHPMYADMIN倒是可以正常显示,在网页中就是乱码)这个是你说的吧? 
      

  6.   

    听说PHPMYADMIN很老的版本没有这个问题,因为它没有做自动转换。而之后的版本都自动做了自动编码/解码,反而是帮了倒忙~~~唉,不知道有没有好的MYSQL客户端工具可以推荐?
      

  7.   

    你服务器端的编码是UTF8。所以你SET NAMES GBK是乱码很正常。
    建议LZ看看精华里面我发的那个帖子。实在搞不定我可以远程协助一下。
      

  8.   

    根据网上推荐的,下了一个EMC SQL MANAGER 2007 LITE FOR MYSQL, 问题依旧 ~ 泪奔
    PS: 楼上的,谢谢你。怎么联系你啊?
      

  9.   

    不知道有没有好的MYSQL客户端工具可以推荐?
    用SQLYOG试试
      

  10.   

    下了你说的SQLYOG,结果一样乱码~~~ :(
      

  11.   

    通过客户端插入的数据都可以正常显示,但是网页显示乱码;通过程序插入的数据都是乱码显示,但是网页上显示正常;
    网页里面指定了<meta http-equiv="content-type" content="text/html; charset=UTF-8">啊~
      

  12.   

    数据库的编码是什么?在SQLYOG中可以查到
      

  13.   

    是'UTF-8'没错,我已经看过了。而且我在建数据库和建表的时候都显式地指定了编码 CHARACTER SET UTF8
    ======================================
    数据库的编码是什么?在SQLYOG中可以查到
      

  14.   

    在SQLYOG中选择数据库,点右键,ALTER DATABASE,看看编码
      

  15.   

    我早看过了。
    DATABASE CHARACTER : UTF8
    DATABASE COLLATION : UTF8-GENERAL_CI