首页 > 解决方案 > 插入俄语字符mysql

问题描述

我正在使用 mysql 数据库和 php 将俄语字符插入表中。

我在用着:

$conn->set_charset('utf-8');

进入我的 .php 页面以将字符集设置为 utf-8 但是,当我尝试使用以下命令打印 DB 字符集时:

echo "set name:".$conn->character_set_name();

表明

设置名称:latin1

我已将我的表设置为:

utf8mb4_unicode_ci

但没有任何改变。

从 ajax 请求中打印传递的文本,我可以看到正确编写的文本。

我应该怎么办?

标签: phpmysqlmysqliutf-8

解决方案


我猜你没有检查mysqli::set_charset(). 它必须返回false,因为utf-8它不是 MySQL 中的有效编码名称;正确的名称是utf8(没有破折号)。或者,甚至更好,utf8mb4.

您可以通过以下方式获取支持的编码列表:

SHOW COLLATION;

推荐阅读