-1

我陷入了这个编码问题。我有一个页面应该是 3 种语言。俄语、英语和土耳其语。将来还会用德语。

这是我正在开发的页面。http://web228.sydney.webhoster.ag/soputnik/index.php
如果你换成俄语,你会看到Register这个词在俄语中会变成奇怪的字符,它应该显示为регистрация

正如您在源代码中看到的,我使用 html5 并且元标记设置为 utf8。为什么那个俄语单词显示得很奇怪?

我在编码问题上很糟糕。请帮我解决这个问题

4

2 回答 2

2

您在 html 元标记中设置 utf8 字符集。但是,您的服务器使用 windows-1251 编码进行响应。由于服务器标头比 html 元标记具有更高的优先级,因此您会得到奇怪的字符。只需配置您的服务器以返回正确的编码或发送标头:

Content-type: text/html; charset=utf-8

直接从你的脚本

于 2013-05-25T13:14:54.623 回答
1

据我了解,该名称来自数据库。如果您以 UTF-8 存储文本,并且您的数据库未配置为以 UTF-8 发送响应,则需要通过调用显式设置它SET NAMES utf8

您可以在此处阅读有关该主题的更多信息:http: //dev.mysql.com/doc/refman/5.0/en/charset-connection.html

于 2013-05-25T12:51:12.517 回答