从希伯来语数据库中检索到的数据以问号形式呈现

时间:2015-01-13 01:03:39

标签: php mysqli

我按照指示的答案做了所有更改 this post 为了能够打印来自数据库但未起作用的希伯来字符串。

这是我的PHP代码:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>

<?php
header('Content-Type: text/html; charset=utf-8');
$servername = "127.0.0.1";
$username = "root";
$password = "";
$dbname = "dbName";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
mysql_query("SET NAMES 'utf8'");
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT * FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Score: " . $row["score"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

</body>
</html>

每件作品都接受了希伯来字符串的插入,我只看到问号(???)。 任何想法为什么??

1 个答案:

答案 0 :(得分:-1)

将浏览器的字符设置设置为希伯来语。

FireFox:工具=&gt;选项=&gt;内容=&gt;高级=&gt;后备字符编码=希伯来语

Google Chrome:菜单=&gt;设置=&gt;显示高级设置=&gt;语言和输入设置

<强>更新
保存文本时,首先重新编码文本。

尝试使用GNU Recode?

$text = mysqli_real_escape_string(recode_string(characterSet,$text));

其中 characterSet 符合RFC-1345,例如'latin1的'
有效字符集:http://www.faqs.org/rfcs/rfc1345.html