【问题标题】:Advice Build Web Sites using ISO-8859-1 or UTF-8建议 使用 ISO-8859-1 或 UTF-8 构建网站
【发布时间】:2014-04-24 05:18:07
【问题描述】:

各位,我决定要制作一个西班牙语网站,并且数据库有很多口音和特殊字符,例如ñ,当我将数据显示到视图中时,它看起来像“Informá tica、Producción、Organización、Diseñador Web、Métodos" 等。顺便说一下,我在 Fedora 20 下使用 JSP 和 Servlets、MySQL、phpMyAdmin 并且知道我已将其添加到 html 文件中:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

在 apache 中,我更改了默认字符集:

#AddDefaultCharset UTF-8
AddDefaultCharset ISO-8859-1

但在浏览器中,数据继续显示如下:“Informá使用 UTF-8 的网站,但我不想一直转换所有重音和特殊字符,有什么建议吗?

【问题讨论】:

标签: php mysql apache utf-8 iso-8859-1


【解决方案1】:

您的文本中出现的编码错误(例如,á 而不是 á)表明您的应用程序正在尝试输出 UTF-8 文本,但您的页面错误地将文本编码指定为 ISO-8859-1 .

在您的 Content-Type 标头中指定 UTF-8 编码。不要使用 ISO-8859-1。

【讨论】:

  • 我已经尝试过UTF-8或ISO-8859-1,因为一开始的数据在另一台计算机上,所以我使用UTF-8导出并尝试,但显示错误的数据,我第二次导出为 ISO-8859-1 和同样的问题,这就是我对 MySQL 的不理解,因为我已经在浏览器和 apache 中配置了字符集,当然我在变化,所以我不知道还能做什么!
  • 我找到了解决方案,当我创建数据库时,我没有选择“cotejamiento”,所以 MySQL 在我的情况下默认使用“latin1_swedish_ci”,我最近看到了最好的存储选项这种带有重音和特殊字符的数据是“utf8_spanish_ci”,顺便非常感谢! =D
【解决方案2】:

这取决于已在任何地方完成的编辑器,无论是在默认情况下以 UTF-8 还是 ISO-8859-1 工作。如果原始文件是用 ISO-8859-1 编写并用 UTF-8 编辑的,请查看编码错误的特殊字符。如果我们保留这样的文件,我们会破坏原始编码(坏的用 UTF-8 保存)。

取决于 Apache 的配置。

这取决于是否有隐藏文件。服务于我们网站的根目录中的 Htaccess(httpdocs、public_html 或类似)

取决于是否在生成的 HTML 的 META 标记中指定。

取决于是否在 PHP 文件的标头中指定。

选择的字符集取决于数据库(如果您使用数据库来显示内容,例如 Joomla、Drupal、phpNuke 或您自己的动态应用程序)。

【讨论】:

  • 好的,但我告诉过我已经在每个 html 文件中将 apache 默认字符集和元字符集更改为“ISO-8859-1”,但我不明白我还有什么如何正确显示数据,这就是我的观点,现在还需要做什么?
  • 您的 IDE 或编辑器将文件保存为 ISO-8859-1 吗?你确定吗?核实。您的数据库是 iso-8859-1 吗?
  • 我正在使用 sublime text 来处理 html5,并且在 java 中我正在使用 eclipse kepler(Java EE 平台),以及关于我正在使用其配置的 mysql tha 数据库,如下所示:SCHEMA NAME :inventario DEFAULT_CHARACTER_SET_NAME:latin1 DEFAULT_COLLATION_NAME:latin1_swedish_ci
  • 使用 sublime 并不能保证,请仔细检查:新文件 -> 保存文件 -> 使用编码重新打开 -> 工作
猜你喜欢
  • 2010-11-18
  • 2010-12-19
  • 2012-07-16
  • 1970-01-01
  • 1970-01-01
  • 2014-02-20
  • 2010-12-08
  • 2019-02-21
  • 2013-05-10
相关资源
最近更新 更多