php 错误描述:不正确的字符串值:'\xF4t l'\xE9...' on insert
php Error description: Incorrect string value: '\xF4t l'\xE9...' on insert
我正在将数据从 UTF8-general-ci table 插入到另一个 UTF8-general-ci table。这些是文章。大约有 20 或 30 个不会插入,因为随机使用法语标题或短语,如“à la”。我收到的错误是 Error description: Incorrect string value: '\xF4t l'\xE9...'.
我所做的一切似乎都不起作用,包括添加
mysqli_set_charset($conn, "utf8");
如果两个 table 都已经是 UTF8,我还能做些什么来插入这些带有法语短语的随机文章?
您在问题中引用的字节(F4 和 E9)在 UTF-8 数据中无效。您的部分或全部数据可能实际上是 ISO-8859-1 - 您需要使用 mb_convert_encoding()
or iconv()
.
将其转换为 UTF-8
尝试使用 utf8_encode();
$sql = "INSERT INTO table (col1)
VALUES ('".utf8_encode($input_variable)."')";
if ($conn->query($sql) === TRUE)
{
echo "Inserted!";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
我正在将数据从 UTF8-general-ci table 插入到另一个 UTF8-general-ci table。这些是文章。大约有 20 或 30 个不会插入,因为随机使用法语标题或短语,如“à la”。我收到的错误是 Error description: Incorrect string value: '\xF4t l'\xE9...'.
我所做的一切似乎都不起作用,包括添加
mysqli_set_charset($conn, "utf8");
如果两个 table 都已经是 UTF8,我还能做些什么来插入这些带有法语短语的随机文章?
您在问题中引用的字节(F4 和 E9)在 UTF-8 数据中无效。您的部分或全部数据可能实际上是 ISO-8859-1 - 您需要使用 mb_convert_encoding()
or iconv()
.
尝试使用 utf8_encode();
$sql = "INSERT INTO table (col1)
VALUES ('".utf8_encode($input_variable)."')";
if ($conn->query($sql) === TRUE)
{
echo "Inserted!";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}