html - HTML 格式中出现的特殊字符

标签 html mysql perl browser

我有一个用 Perl、Apache 和 Mysql 开发的遗留应用程序。

应用程序中的某些部分显示角色的 HTML 代码。问题被隔离到键盘上的以下字符:

  1. 分号
  2. 逗号
  3. 引号
  4. 小于号
  5. 大于号

Refer the screenshot.

存储这些数据的表本身也在存储这样的数据。该表是 CHARSET=latin1。

Refer DB screenshot.

应用程序正在使用

<meta charset="utf-8" />

在 HTML 呈现中。

我的问题是“如何解决这个问题”?

  • 我应该对数据库字符集进行一些更改吗? (我有多个 放置在应用程序中这是被破坏的地方和多个表 用于各个部分)
  • 我应该在 PERL 数据库连接中做一些改变吗? (这看起来是处理问题的最佳位置,因为这对于使用 DB 交互的任何模块都很常见)模块,以便它将解码/编码特殊字符。

还有其他建议吗?

最佳答案

看起来不像是数据库字符集问题,而是 HTML 转义问题。您似乎在通常不会被 HTML 浏览器转义的数据值中预先转义了字符实体引用,但它们位于文本框内并已转义。它们是如何渲染的?通过一些未正确呈现转义的 AJAX 代码?

https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Character_entity_references_in_HTML

关于html - HTML 格式中出现的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26582450/

相关文章:

html - 将 Google 自定义搜索输入框放在图像上

html - 如何更改 nav ul li 颜色?

php - MYSQLi 插入后出现空白页?

perl - 在 Perl 中通过 heredoc 创建 HTML 文件失败并出现 Bareword 错误

perl - 如何在 perl CGI 参数中使用 unicode

javascript - 文本在输出中垂直上下跳动。使用 "document.getElementById("firstDiv").innerHTML = document.getElementById ("location").value;"

iphone - 在 iphone 应用程序中嵌入 HTML 页面的最佳框架?

mysql - HandlerSocket 事务

python - 用python执行mysqldump并通过stdin设置密码

perl - 如何在 native Perl 代码中复制 cat/sort/uniq?