【发布时间】:2012-09-07 17:35:00
【问题描述】:
我的网站上有一个 cmets 部分。这些 cmets 存储在 MySQL 数据库中具有“文本”数据类型和 latin1_swedish_ci 排序规则的字段中。当我回显查询结果以显示 cmets 时,字符 U+0008(退格)显示在 Firefox、Opera 和其他浏览器中。 Chrome 会忽略这一点,只显示空白。有什么办法可以去掉这个字符?
编辑: 我在网站上有两个部分,一个是我发布通知的地方,另一个是用户发布 cmets 的地方。包含内容的“消息”字段具有相同的配置和回显。正如我所说,无论我是通过网站发布 cmets 还是通过直接查询发布,都没有什么区别。值得注意的是,末尾带有 -tag 的注释没有附加 U+0008 字符。
【问题讨论】:
-
你不应该删除它。你应该找到它的来源,并在那里修复。
-
我会尝试手动添加一个值,可能是表单或提交引起的......
-
顺便说一句:你为什么使用 latin1 编码?
-
这是我的主机默认设置的,我没有对此进行任何更改。我尝试通过手动执行查询来添加值,但错误仍然存在,因此它应该是数据库中的错误或 php 错误。在此期间我会尝试更多的东西......
-
“这是我的主机默认设置的” - 我不明白。您必须同时控制数据库编码和连接编码,否则以垃圾结尾