2017-02-14 237 views
0

我在我的HTML顯示「€」一個問題...UTF8編碼/€

  1. 我的數據庫字段排序「utf8_general_ci」
  2. 我一樣,把數據放到一個JavaScript變量: $ query = mysqli_query($ con,「SELECT * FROM Table WHERE Id ='1'」); $ data = mysqli_fetch_assoc($ query);

    $data = json_encode(utf8_encode(($data["Field"]))); 
    

因爲我想呼應$數據...我得到的變音看「ÄüÖü」等字符,如「」#@ &」等,但我沒有看到 SIGN .....它得到顯示爲(不是在一個矩形...只是一個正常的

任何人都可以幫忙嗎?

順便說一句,這是我的頭:

header("Content-Type: text/html; charset=utf-8"); 
+1

什麼是'json_encode' /'utf8_encode'組合應該做什麼?如果你的數據庫已經使用Unicode字符,爲什麼編碼步驟? – mario

+0

我把這個php變量和交給一個JavaScript變量,沒有編碼,我的代碼不起作用。這樣它的工作 – Inkperial

+0

「不工作」部分是由您的結果提取不返回UTF-8字符串。你知道嗎,Latin-1不包含歐元符號。 – mario

回答

1

小號UTF-8編碼。您應該在編輯器或IDE的「另存爲」對話框中選擇這種效果。

然後確保你的連接是UTF-8編碼 - 默認情況下它是ISO-8859-1。

連接到數據庫,對於MySQL 5.0.7之前後:

的mysql_query( 「SET NAMES UTF8」); 對於mySQL 5.0.7及更新版本:

mysql_set_charset(「utf8」);

+0

如果我這樣做,它會顯示「Üß」爲「üÃ」,我也沒有看到€。 – Inkperial