【发布时间】:2011-02-06 14:53:44
【问题描述】:
我有一个具有 UTF-8 字符集的 MySQL 表,在尝试通过 PHP 表单插入时,数据库给出以下错误:
PDOStatement::execute(): SQLSTATE [HY000]:一般错误:1366 不正确的字符串值:'\xE8' 专栏...
有问题的字符是“è”,但考虑到数据库和表设置为 UTF-8,我不明白为什么这应该是一个问题。
编辑
我直接从mysql终端尝试过,也遇到了同样的问题。
【问题讨论】:
-
在进行查询之前您是否尝试过 mysql_query('SET NAMES UTF-8')?
-
是的,我试过了(顺便说一句,它是 UTF8,不是 UTF-8 :)
-
关于您的评论的另一个想法:您是否确保用于发送表单的字符集是 UTF-8(客户端;以 XML 编码或标头/元属性设置,也许还有由