你先看看你的数据类型是不是匹配啊
再看看哪个中文字段,是否有值.你把$sql语句打印下,在mysql下执行看看。

解决方案 »

  1.   

    做过了。。我确定有值。。数据类型也是VARCHAR的。。网上找过。。没有正解...实在没法只有到这里来找高手帮忙
      

  2.   

    同意CXXLP的说法..我也觉得这样..但怎么能够让他认识呢??问题依然存在...
      

  3.   

    用stripcslashes还是不行...没法插入中文但英文已经插入了...
      

  4.   

    base64_encode($str);使用的base64_decode($str);这样该可以了把
      

  5.   

    这个问题遇到过,编码问题
     mysql_query("SET NAMES 'utf8'"); 
      

  6.   

    你前台web页面的编码是GB2312的吗?在你的页面 <head></head> 之间加入以下两行,然后试试看:
    <meta http-equiv="Content-Language" content="zh-CN">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
      

  7.   

    多谢各位提点呀。。我用的mysql_query("SET NAMES gb2312")。。前台没有SETHEADER。。但在页面属性里设置为gb_2312的。。字段大小都是经过核实的。。问题仍在解决中 
      

  8.   

    base64_encode($str);加上去倒没法提交了,没有弄明白数据库与前台页面的编码规则,
    是不是要编码一致就不用设置mysql_query("SET NAMES xxx")呀。。或是无论数据库为什么类型都要进行设置呀??
      

  9.   

    还要补充一点:1。pmserv(MYSQL辅助工具)中输入数据就能正常显示在数据库及页面。
    2。开始数据库、表、字段都是UTF-8,写入中文无论如何都是乱码。。后来改为gb_2312_bin,不知道是没写进去还是无法读取