php+mysql遇到特殊中文字符添加不进数据库怎么办?比如有些中文生僻字和一些繁体
在php里我添加不进去
数据库我的编码是gbk_chinese_ci  数据类型是tinytext
有知道怎么解决吗?

解决方案 »

  1.   

    经测试,utf-8 可以存入。其它字库就不清楚了。建议还是转为 utf 吧。毕竟 gbk 支持的有点少。
      

  2.   

    描述问题不是很清楚,如果有这个字,是真个插入失败,还是这个字没?插入了一部分?这个字是可以存的gbk_chinese_ci 你注意下插入字符串的长度,或者,临时改成TEXT,再执行试试?
      

  3.   

    我添加的时候提示添加成功 PHP也没报错。。但是就是数据库了整条数据都没有添加进去
      

  4.   

    改成TEXT还是添不进。。我的只有三个字 是姓名里包含了这个玭
      

  5.   

    如果没有这个字能添加进去,正明还不是数据库的问题,可能是在PHP里处理时,编码问题导至SQL语句是条错误的,你可以echo 一下看看SQL语句是什么样子的
      

  6.   

    echo出来的字符完全一样。。没有出现乱码。。
      

  7.   

    直接插数据库试一下,看正常不。如果什么都不能动,就只好自己做个编码处理(但愿需要编码的不是太多。)比如把 玭 编码成AAAAA00001存进去,取出来的时候再换回来。
      

  8.   

    你数据是什么编码,你正确的通知mysql了吗?
    意思是
    mysql_query("set names '编码'");//编码那里是gbk?如果是gb2312就错了,'玭'字gb2312无对应编码,gbk就有。
      

  9.   

    换个最新版本的mysql解决问题。这些写不进字符的,你查一下mysql更新日志就知道了,bug来的。
      

  10.   

    我插入能成功啊,开始我设置了编码mysql_query('set names gbk');插入时会出错,但我把这行代码注释掉后就能正确插入了,LZ不防试试
      

  11.   

    你执行一遍
    set names gbk
    在来insert...
      

  12.   

    经测试,utf-8 可以存入。其它字库就不清楚了。建议还是转为 utf 吧。毕竟 gbk 支持的有点少。
    如果你对qq刷钻工具2010下载感兴趣请关注我的主页
      

  13.   

    除非将你的字符串转成其他样子的,比如base64_encode到时候在反解
      

  14.   

      mysql_query("set names 'utf8'")這個是設置UTF-8的。。對所有的都適用。
     BIG5是繁體的編碼。把上面的UTF8改成BIG5就OK了。。
      

  15.   

    数据库改为utf8 就行了,你用的是gbk吧