gpt4 book ai didi

php - 为什么我不能在我的 mysql 数据库中查看外语字符?

转载 作者:可可西里 更新时间:2023-11-01 07:57:40 25 4
gpt4 key购买 nike

我正在向我的数据库中插入以下字符:汉字/汉字

这是页面上插入字符的元标记:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

我已将表中所有包含字符的列更改为 utf8_unicode_ci

外来字符在 DB 中是这样显示的:汉å—/æ¼¢å—

当我用sql语句在页面上显示那些外来字符时,它们又正确显示为:汉字/汉字

我猜我的数据库中有一些不正确的设置,因为它正确存储了它,但没有正确显示它。

我该怎么做才能使外语字符在我的数据库中正确显示?

编辑:这是我的插入内容:

$sql = 'INSERT INTO orders (foreign_characters)
VALUES (?)';

$stmt = $conn->stmt_init();
$stmt->bind_param('s', $_SESSION['foreign_characters']);
$inserted = $stmt->execute();

最佳答案

数据库的连接也是UTF-8编码的吗?

试一试:连接到 mysql 数据库后,立即运行以下查询。

SET NAMES utf8;

这应该可以解决问题(参见 MySQL doc )。 (是的,每次连接时都必须这样做。)

顺便说一句:不要只依赖 <meta> - 标记,发送适当的 HTTP header 。

关于php - 为什么我不能在我的 mysql 数据库中查看外语字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2488886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com