MySQL编写的语句不能插入UTF-8字母

时间:2016-11-28 17:50:47

标签: php mysql utf-8

我可以从数据库中获取UTF-8字母,例如:ąčęėįšųūž,但不能将它们插入数据库,由于某种原因只有š被插入到数据库中,其余的插入为{{1} }。我通过这个文件连接到我的数据库:

?

然后通过以下代码插入数据:

<?php
    $GLOBALS['mysqli'] = new mysqli("...", "...", "...", "...");

    $stmt = $GLOBALS['mysqli'] -> prepare("SET NAMES 'utf8'");
    $stmt->execute();
?>

在插入之前,我尝试$linkName = $_POST['linkName']; $stmt = $GLOBALS['mysqli'] -> prepare (" INSERT INTO NavigationLinks (linkName, fileName, iconExt) VALUES (?, ?, ?) "); $stmt->bind_param("sss", $linkName, $fileName, $iconExt); $stmt->execute(); $stmt->close(); 并输出正确的字符。

1 个答案:

答案 0 :(得分:2)

对要添加UTF8数据的表和列使用UTF8编码/排序规则。