2012-07-15 39 views
2

我OK存儲在我的數據庫一個度的符號(°),它的顯示OK雖然phpMyAdmin的(整理設置爲utf8_unicode_ci)。的MySQL/PHP度的符號

但在我的php代碼中,當我獲取數據時,符號變成了「 」字符。

如果我在我的PHP中硬編碼度符號OK顯示正常,問題是隻有從數據庫中獲取它時。

html實體和html標題在我的情況下不起作用。

+0

您是否在標記中使用了'UTF8'?換句話說,你的'head'中的'? – 2012-07-15 16:49:12

+0

我傾向於更喜歡整理'utf8_general_ci',因爲它*工作*。另一方面,請確保您的網站正確發送內容類型標題(即使用utf8)以及正確的元標記。 – Christian 2012-07-15 16:49:36

+1

整個管道必須是utf。在MySQL中有一個utf表是沒有用的,如果php <-> mysql或php <->瀏覽器連接在(說)iso8859 – 2012-07-15 16:55:17

回答

2

這通常是由於使用utf8以外的其他連接引起的。

嘗試使用mysqli::set_charsetmysql_set_charset如果使用較舊的庫。

+0

感謝您的答案,我找到了解決方案: 在DNS字符串中我有「charset = UTF-8」,但它應該是:「charset = utf8」 – Damian 2012-07-15 18:15:59