SQLSTATE[HY000]: General error: 1366 Incorrect string value: ‘\xF0\x9F\x99\x nickname。。。。。

方法一:
去除非3字节的特殊符号
$nickname = preg_replace(‘/[\x{10000}-\x{10FFFF}]/u’, ‘’, $nickname)

方法二:
升级到MySQL5.5+版本,支持utf8mb4编码格式,然后执行下面的变更语句:
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
这样可以完整保存用户昵称,但系统升级风险较大,需要多方面测试。

我测试方法二没成功,感兴趣的朋友可以尝试一下

更多相关文章

  1. JavaScript:留言板添加字数实时统计与禁止超出功能,部分字符串和
  2. 用jQuery的attr()设置option默认选中无效的解决 attr设置属性失
  3. 【JS基础入门】JavaScript原生Ajax请求与响应处理方式及JSON数据
  4. 0407作业-留言板、字符串和数组的常用方法
  5. 【MySql】sql_slave_skip_counter 参数的用法解析
  6. 硬盘出现“此卷不包含可识别的文件系统”的解决方法
  7. 软件测试女孩可以不?
  8. 一种基于Gradient Boosting的公交车运行时长预测方法
  9. 不产生第三个临时变量的前提交换两组数据

随机推荐

  1. mysql 拷贝表(复制表)的几种方式
  2. [mysql] 一次sql耗时高引发报警的分析和
  3. MySQL 慢查询日志分析及可视化结果
  4. MySQL 自定义函数.txt
  5. 救急~mysql无法启动,显示[ERROR] Aborting
  6. MySQL 绿色版基本设置语句
  7. tp框架报“mysql_connect(): The mysql e
  8. mysql中binglog底层原理分析
  9. MySQL利用Navicat导出数据字典
  10. mysql故障---is not allowed to connect