飘易博客(作者:Flymorn)
订阅《飘易博客》RSS,第一时间查看最新文章!
飘易首页 | 留言本 | 关于我 | 订阅Feed

解决MYSQL:Incorrect string value:\x错误!

Author:flymorn Source:飘易
Categories:数据库 PostTime:2011-3-14 18:14:09
正 文:
    最近飘易碰到这样的一个MYSQL错误,在insert数据时报错“Incorrect string value: '\x”,折腾了几次,发现就是编码问题。

    首先,我的网页是 utf-8 编码,通过 3种方式已经强制了:
1,  header('Content-Type: text/html; charset=utf-8');
2,  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
3,  网页源码强制为 UTF-8 无BOM格式。

    但是在获取源目标网页(编码为:ISO-8859-1)时遇到特殊符号,如圆角下的符号 360º 这个度数时,就提示错误“Incorrect string value: \x”了。

    这种情况下的解决方法:使用 utf8_encode 函数 将 ISO-8859-1 编码的字符串转换为 UTF-8 编码即可。

    飘易遇到的问题和这位仁兄有点像:
    Incorrect string value:
  MYSQL按装时选的字符为GB2312。然后在PHP的程序中也有mysql_query("set names gb2312");
  添加中文英文都正常。可是总有人会从别的网站上复制或自己输入一些字符为五笔圆角输入。这时就出现
  Incorrect string value: 'xA9pxC1xF7xB6xAF...' for column 'pdetails' at row 1
  不为圆角输入就是正常的。不能添加进字符。大家帮帮忙。应怎么解决了?那个字段为 pendetails text gb2312_chinese_ci
  解决方式:
  将该表的字符集从gb2312_chinese_ci修改为gbk_chinese_ci
  这是由于字符集原因造成的。

    只是,我的不涉及中文编码而已。
作者:flymorn
来源:飘易
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。
上一篇:CPanel下Cron Jobs还原超大MYSQL数据库的方法
下一篇:互动百科:法院申请“拆分百度”
2条评论 “解决MYSQL:Incorrect string value:\x错误!”
2011-3-16 15:17:39
学习一下,MYSQL不是很懂了
2011-11-3 18:26:59
刚碰到了,加个mysql_query("set names gbk"); 解决问了
发表评论
名称(*必填)
邮件(选填)
网站(选填)

记住我,下次回复时不用重新输入个人信息
© 2007-2010 飘易博客 Www.Piaoyi.Org 原创文章版权由飘易所有 渝ICP备07006361号