解决方案 »

  1.   

    你向数据库发送的是 gbk 编码的串,而数据库默认的字符集并不是 gbk 的
    所以数据库无法识别传入的串,因此出错
      

  2.   

    我转码出来的echo的sql是正常的啊,就是不清楚怎么就向数据库发成gbk的,应该是编码问题但就是不知道问题出在哪,我连接数据库的时候设置的编码utf8
      

  3.   

    数据库是utf8,插入的sql参数我都转过码了,echo的sql执行也没问题
      

  4.   

    1、在你的代码中并没有数据库操作的函数,所以我不知道你使用的是什么数据库。因此在回复中没有提出建议
    2、你对传入的数据都做了形如 $title = iconv("utf-8","gbk",strip_tags($title)); 这样的操作,这就把 utf-8 编码转成了 gbk 编码
    3、把错误信息中的 \xB2\xE2\xCA\xD409... 用 php 打印出来
    echo "\xB2\xE2\xCA\xD409...";
    就是 gbk 编码的 测试09...
    4、如果你连接数据库时已经声明了使用 utf8,那么这些 gbk 编码数据是要因不属于 utf-8 范围而报错的