gpt4 book ai didi

php - UTF-8 数据库问题

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

我有一个具有 UTF-8 字符集的 MySQL 表,在尝试通过 PHP 表单向其插入时,数据库出现以下错误:

PDOStatement::execute(): SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xE8' for column ...

有问题的字符是“è”,但考虑到数据库和表设置为 UTF-8,我不明白为什么这应该是个问题。

编辑

我直接从 mysql 终端尝试过,但遇到了同样的问题。

最佳答案

您的数据库可能设置为 UTF-8,但数据库连接也需要设置为 UTF-8。您应该使用 SET NAMES utf8 语句来做到这一点。您可以在 PDO 中使用 driver_options 让它在您连接后立即执行:

$handle = new PDO("mysql:host=localhost;dbname=dbname",
'username', 'password',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));

查看以下两个链接,了解有关确保整个网站正确使用 UTF-8 的更多详细信息:

关于php - UTF-8 数据库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2615611/

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