当我使用phpMyAdmin直接在MySQL中运行查询时,它允许–
(长划线,而不是正常-
),但是当我从我的PHP代码运行此查询时,它将它们转换为{{ 1}}。
如果您编码 - 它将来–
(在JavaScript中)。 %E2%80%93
变为%E2
,â
变为%80
,€
变为%93
。我不明白当我在phpMyAdmin中运行查询时它将数据保存为“
,但是当我在我的PHP代码中运行查询时,它就不能按照我想要的方式工作。
答案 0 :(得分:1)
您在表格中使用哪种字符编码?在php中连接到DB后尝试运行:
mysql_query('SET NAMES utf8'); //if you use utf-8
答案 1 :(得分:0)
也许phpMyAdmin引擎可以将长划线转换为普通破折号?
答案 2 :(得分:0)
您可能缺少将HTML标记放在HTML上,是否要在HTML文档的头部编写下一行?
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
否则,浏览器会将其解释为ISO-8859-1。
您应该在数据库,连接和html文档的任何地方使用相同的编码。
为了确保你有一个utf-8表,运行下一个语句,并在结尾处检查 CHARSET = utf8 。
SHOW CREATE TABLE tableName;