原因是创建表的时候有错误,原因有:
一、你没有在SQL查询中指定编码类型;
二、表的编码和你所用的编码类型不同;

解决方案 »

  1.   

    SQL语句我就用了一个"SELECT * FROM tableName"
    就是简单的将表的内容读出来!
    怎样在SQL查询中指定编码类型?
    表我用的gb2312,而且在命令提示符中可以插入中文!
    谢谢了!
      

  2.   

    apache,php pages,mysql should be the same charset.
      

  3.   

    在mysql_select_db()下面加一行
    mysql_query("SET NAMES GB2312");
    应该没有问题了
      

  4.   

    估计都是编码的问题
    niohe的方法可以试试
      

  5.   

    各位大哥:
    你们遇到过这样的问题了吗?
    你们是怎么解决的啊?
    难道我每用个SQL语句就要来个mysql_query("SET NAMES GB2312");?
    我不是说它不好,起码也是一种解决的方法,但我还不知道能行不。(我在网吧还的回去试)
    但是我觉得它太麻烦了。我想知道在服务器的配置文件中怎么设置。
    我的MySQL服务器在命令行模式下能成功的插入中文值。
    my.ini中default-character-set = "gb2312"
    php.ini中default_charset = "gb2312"
    各位难道就没有办法了吗?
    谢谢热心的各位了!
      

  6.   

    mysql_query("SET NAMES GB2312")
    就算用这个也不麻烦的。
    实际写东西的时候数据库连接都是放到一个单独的文件里如conn.php
    然后在每个要用到数据库的page里require它的。
      

  7.   

    只是老版本的mysql用双latin1来存中文掩盖了这个问题,其实所有的数据库都会有字符集的问题的。