Mysql 欧元符号呈现为–2

Mysql 欧元符号呈现为–2,mysql,html,linux,symbols,Mysql,Html,Linux,Symbols,这里有一个不寻常的问题:我有一个应用程序,它使用一个文本文件来填充一个mysql数据库,该文件包含一些“€”符号以及文本文件中的其他文本。在本地呈现时,欧元符号看起来不错,但在linux服务器上以及在web上以html显示时,在某些浏览器中是这样的: -2 任何人都可以建议一种解决方案将标题或元素中的字符集设置为UTF-8,这样就不会将其作为CP1250处理。在文件中使用UTF-8编码类型,并确保在页面中添加内容类型元标记: <META HTTP-EQUIV="Content-Type"

这里有一个不寻常的问题:我有一个应用程序,它使用一个文本文件来填充一个mysql数据库,该文件包含一些“€”符号以及文本文件中的其他文本。在本地呈现时,欧元符号看起来不错,但在linux服务器上以及在web上以html显示时,在某些浏览器中是这样的:

-2


任何人都可以建议一种解决方案

将标题或元素中的字符集设置为UTF-8,这样就不会将其作为CP1250处理。

在文件中使用UTF-8编码类型,并确保在页面中添加内容类型元标记:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">

希望这有帮助

如果在浏览器窗口中以文本而不是HTML形式查看text.txt文件,请设置

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
当您处理文本文件时,不会执行此任务

所以标签不会被隐藏,而且它可能甚至最有可能向您试图填充的mysql数据库发送垃圾,例如通过自动获取在线发布的文件

因此,如果在浏览器窗口中而不是:

123.39欧元

你看到了吗

–2 123.39

问题不在于文本文件的质量,而在于浏览器处理编码的方式

如果您需要复制并粘贴显示的文件,并且–2挡住了您的去路, 尝试将浏览器默认编码设置为unicode UTF-8

在FF中,您要在此处执行此操作:

工具->选项->内容选项卡->字体和颜色->高级->默认字符。编码

一旦出现,选择UTF-8编码


请记住,由于浏览器缓存的原因,有时页面重新加载可能不足以看到更改。在这种情况下,请重新启动浏览器。

HTTP响应头是否包含正确的内容类型和内容编码?例如:内容类型:text/html;charset=utf-8。我发现W3C关于字符编码的文章很有用,请参阅,其他文章从那里链接。@Paul-很高兴能提供帮助!:它不是在所有情况下都对我有效。。。我在Windows7机器上,使用WAMP服务器。在Firefox&IE中:没问题,但Chrome仍将欧元渲染为–欧元。我在源代码中正好有提到的meta标记。响应头包含其他内容类型:text/html,所以我想这很好。有人知道为什么Chrome不能正确呈现吗?@我自己:在HTML开始之前就有内容。当我处理好它时,它突然起作用了。当输出发生在之前时,可能会忽略元标记。总之,问题解决了: