gpt4 book ai didi

php - mysql_fetch_array 返回非 Unicode 文本

转载 作者:可可西里 更新时间:2023-11-01 06:56:24 24 4
gpt4 key购买 nike

我制作了一个简单的 PHP 页面来获取 POST 数据并获取 sql 查询然后打印结果。我正在使用 mysql_fetch_array 函数。

代码运行良好,但响应是非 Unicode 文本,它返回如下内容:

?????ABC?????

请注意,数据库排序规则是 UTF8,存储的数据在 phpMyAdmin 中正确显示。我什至在 php 页面中使用了这个 META 标记,但结果是一样的:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">

有什么想法吗?!

最佳答案

在第一个查询之前添加这些代码行:

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET SESSION collation_connection = 'utf8_unicode_ci'");

或者您可以编辑您的 mysql 配置以默认使用 utf8。在此处检查您需要做什么。

Change MySQL default character set to UTF-8 in my.cnf?

更新

mysql_query 函数已弃用,因此可以像这样使用 mysqli 对象:

$mysqli = new mysqli("localhost", "MYSQL_USER", "MYSQL_PASS", "MYSQL_DB");

$mysqli->query("SET NAMES 'utf8'");
$mysqli->query("SET CHARACTER SET utf8");
$mysqli->query("SET SESSION collation_connection = 'utf8_unicode_ci'");

关于php - mysql_fetch_array 返回非 Unicode 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11939216/

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