PHP-mysql学习笔记

文章讨论了在PHP和MySQL环境下处理emoji表情数据时遇到的显示问题。关键在于设置数据库和表的字符集为utf8mb4。当遇到Serversentcharsetunknowntotheclient.错误时,需检查MySQL配置文件(my.ini)中的字符集设置,并确保在启动服务时生效。按照指南正确配置后,可以成功读写emoji数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录

发送emoji数据无法正常显示的问题

问题描述
前端发送关于emoji的表情数据给php,php写入mysql

  1. php接收到了数据,但无法写入
  2. 写入过后返回前端无法正常显示

PHP

  1. 在对应的pdd函数中设置字符集为utf8mb4

Mysql

emoji数据写入数据库所需条件

  1. 数据库版本大于5.1.xxx,本人用的是msyql8
  2. 将数据库需要emoji的数据库表字符集设置为utf8mb4(可能需要重启数据库,本人使用时没重启也能生效)
  3. 把需要用到的表中的字段的字符集设置为utf8mb4

以上设置完毕后即可使用emoji数据进行读写了

注意事项

Server sent charset unknown to the client. Please, report to the developers

问题复现:换了电脑,msyql这些软件重新安装了,导致一些配置文件没有设置
解决:我的mysql是8.0.37版本,按照流程进行安装的时候,过程中会创建两个文件夹,一个是msyql ,一个是mysql server
tips:注意,在安装完毕后初始化msyql时,需要把mysqlserver里的my.ini文件复制到mysql文件夹中,否则你在里面修改的任何配置信息在net start msyql时都不会生效
在my.ini文件中搜索下图中的字段,修改为ut8
在这里插入图片描述
保存然后重启mysql即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

淳杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值