我通過StackOverFlow搜索,發現了類似的問題,但沒有回答我的具體情況,所以我想這是一個新問題。如何防止鑽石形狀的問號出現?
當我插入條目到數據庫形式的文本框,我使用mysql_real_escape_string();然後當我顯示我使用htmlspecialchars()的信息;
我使用UTF-8作爲字符集。我們正在使用HTML5格式。數據庫的排序規則默認設置爲latin1_swedish_ci,所以我使用它。對於所有表設置爲latin1_swedish_ci。對於表中的所有字段,我們使用utf8_general_ci。
作爲一個例子,這是它的外觀時,顯示出其:
�Who are you?� he asked his iPhone. �I am a humble
personal assistant,� the device replied, bringing the biggest...
如何解決這個問題?
您能夠更改字符集數據庫的?如果可以的話,也可以使用UTF-8 - 它可以節省一點麻煩。否則,如果要在數據庫中存儲可以用latin1_swedish表示的特殊字符,那麼在顯示之前您需要將它們轉換爲UTF-8。而且,在插入數據時,您需要將UTF-8轉換回latin1 - 這就是爲什麼將所有內容都設置爲相同字符集更容易的原因。 – halfer 2012-04-28 22:12:25
您將Unicode數據插入到Latin1數據庫。將數據庫轉換爲Unicode或在插入數據之前將數據轉換爲Latin1。 – JJJ 2012-04-28 22:12:36
確保你的文件也有UTF-8編碼 – 2012-04-28 22:12:41