2017-02-14 239 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