當從MySQL數據庫回顯數據時,我在文本中出現奇怪的符號。我試過htmlspecialchars_decode()
,但無濟於事。數據在MySQL數據庫中存儲爲VARCHAR
,並且在MySQL工作臺中查詢時顯示爲他們應該顯示的數據。在瀏覽器中不顯示特殊字符
的字符包括'
,ë
,è
,é
,ê
,...
如何獲得這些字符在HTML中顯示?
當從MySQL數據庫回顯數據時,我在文本中出現奇怪的符號。我試過htmlspecialchars_decode()
,但無濟於事。數據在MySQL數據庫中存儲爲VARCHAR
,並且在MySQL工作臺中查詢時顯示爲他們應該顯示的數據。在瀏覽器中不顯示特殊字符
的字符包括'
,ë
,è
,é
,ê
,...
如何獲得這些字符在HTML中顯示?
這爲我工作:
$db = Database::getInstance();
$mysqli = $db->getConnection();
$mysqli->set_charset('utf8mb4');
有你宣佈你的網頁的HTML字符集?
在HTML5中,這是好的:
<meta charset="UTF-8">
舊(HTML 4.01)需要類似:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
你有編碼問題。
您需要設置<meta charset="UTF-8">
。
您需要在建立連接到數據庫 「SET NAMES UTF8」
如果您在使用PDO需要設置PDO這樣new M_PDO("mysql:host={$dbhost};dbname={$dbname};charset=utf-8", $dbuser, $dbpassword);
你也可以使用此功能後,運行查詢這將編碼口音爲HTML實體
function convert($str){
return mb_convert_encoding($str, "HTML-ENTITIES", "UTF-8");
}
echo convert($YourDataFromDB);
希望這將有助於
這個問題已經被問過。 http://www.joelonsoftware.com/articles/Unicode.html – Strawberry 2014-12-02 16:37:41
試試這個:<?php header(「Content-Type:text/html; charset = utf-8」); ?>' – Rizier123 2014-12-02 16:38:08
[UTF-8一路通過]可能的重複(http://stackoverflow.com/questions/279170/utf-8-all-the-way-through) – vaso123 2014-12-02 16:38:16