今天有业务员反应,编辑某个用户的信息的时候出现了异常,异常信息如下: Incorrect string value: "xFOx9Fx92x9D vxE6..'f or column 'name' at row 1 我让她发个截图看看,结果发现该用户的昵称如下: 原图 该昵称是微信昵称,也未免会带一些特殊符号或者,既然异常由数据库抛出,我们不妨查看一下该字段的字符集: 原来如此 最初的 UTF-8 格式使用一至六个字节,最大能编码 31 位字符.最新的 UTF-8 规范只使用一到四个字节,最大能…
mysql 插入繁体字的时候报错,然后网上找了,说是mysql的库设置为character-set = utf8mb4 结果设置还是没效果 搞了好几天都不知道什么原因,然后今天想了想,好像之前有个学长说存入中文会乱码,然后看了连接字符串,结果居然是坑爹的gbk,跟数据库不对应,结果造成插入的时候失败,然后把mysqlconntion改成charset=utf8就可以了.…
移除微信昵称中的emoji字符: /** * 移除微信昵称中的emoji字符 * @param type $nickname * @return type */ function removeEmoji($nickname) { $clean_text = ""; // Match Emoticons $regexEmoticons = '/[\x{1F600}-\x{1F64F}]/u'; $clean_text = preg_replace($regexEmoticons, '',…
Mysql插入数据时提示:ERROR 1366 (HY000): Incorrect string value: ‘\xE5\x8F\xB0\xE5\xBC\x8F…’ fo 分析如下: 首先通过语句查看: show create table  tdb_goods_cates ;  发现如下所示:12   然后通过语句修改数据表编码:alter table tdb_goods_cates  default character set utf8;  但是修改后仍然出现错误. 我们再次查看编码:sh…
ERROR 1366 (HY000): Incorrect string value: '\xB1\xEA\xCC\xE2\xD5\xE2...' for column 'title' at row 2 MYSQL经典问题:  (ERROR 1366 (HY000): Incorrect string value:'\xD5\xD4' for column 'name' at row 1) 网上有好多解决中文乱码的贴, 大致都讲的是修改 %MYSQL_DIR%/my.ini default-ch…
问题分析 普通的字符串或者表情都是占位3个字节,所以utf8足够用了,但是移动端的表情符号占位是4个字节,普通的utf8就不够用了,为了应对无线互联网的机遇和挑战.避免 emoji 表情符号带来的问题.涉及无线相关的 MySQL 数据库建议都提前采用 utf8mb4 字符集,这必须要作为移动互联网行业的一个技术选型的要点 Mysql 版本的限制,Mysql 5.5.3之前的版本,支持的utf8为3字节的,Mysql 5.5.3之后的版本支持utf8mb4 解决方案 修改mysql的配置文件,wi…
//在获取微信用户信息时加密保存到数据库 System.Web.HttpUtility.UrlEncode("需要加密的字段") //前端在展示是解码 <script type="text/javascript"> alert(decodeURIComponent("%f0%9f%8e%80%e5%ba%b7%e5%b0%8f%e5%82%bb%f0%9f%8e%80")) </script>…
function filterNickname($nickname) { $nickname = preg_replace('/[\x{1F600}-\x{1F64F}]/u', '', $nickname); $nickname = preg_replace('/[\x{1F300}-\x{1F5FF}]/u', '', $nickname); $nickname = preg_replace('/[\x{1F680}-\x{1F6FF}]/u', '', $nickname); $nickn…
用Select…like %…%来查找MySQL的text类型字段的一个中文,却发现查出来的是乱的,发现不少人也遇到这样的问题.在中文排序和查找的时候,汉字的结果是错误的. 原因在于MySQL在查找字符串的时候大小写不敏感,字符集默认使用ISO-8859,在转换过程中会出现问题. 有两种方法可以解决: 第一种方法是使用BINARY关键字. BINARY 操作符将跟在它后面的字符串强制作为一个二进制字符串.这可以很容易地强制一个列的比较以字母大小写敏感方式进行,即使该列没有定义为 BINARY 或…
遇到这个问题,所有的编码都设为utf8了,还是没有用,各种乱码,后来发现这是mysql自己的问题,它在5.5及之前的版本只支持3字节的utf8编码,出现4字节的utf编码时出现错误,参考: http://www.2cto.com/database/201305/211707.html 换了mysql5.6.24后,妥妥的中文乱码消失了. MySQL-5.6.24免安装版配置方法 2015-08-02 12:10 本站整理 浏览(6089)   MySQL-5.6.24免安装版配置方法,有需要的朋…