我为什么不能在我的MySQL数据库查看外语字符?
题
我插入下面的字符到我的DB:的汉字/汉字强>
这是将所述字符的页面上的元标记:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
我已经改变了所有我的表中持有该字符是列 utf8_unicode_ci
在外文字符显示像这样在DB:的汉A- /æ¼¢A - 强>
当我使用SQL语句在页面上显示的外国人物,他们为重新正确显示:汉字/汉字
我猜我有一些设置,是不是在我的数据库正确的,因为它正确保存,但不能正确显示。
我能做些什么来让外国语言文字在我的数据库中正确显示?
修改强>这是我的插入物:
$sql = 'INSERT INTO orders (foreign_characters)
VALUES (?)';
$stmt = $conn->stmt_init();
$stmt->bind_param('s', $_SESSION['foreign_characters']);
$inserted = $stmt->execute();
解决方案
时到数据库也UTF-8编码的连接?
这给一试:连接到MySQL数据库之后,运行下面的查询
SET NAMES utf8;
这应该可以解决问题(见 MySQL的文档一>)。 (是的,你必须这样做每次您连接。)
顺便说一句:不只是依靠<meta>
标签,发送适当的HTTP标头
不隶属于 StackOverflow