2009-09-02 2 views
9

Я использую UTF-8 на всех моих страницах, но некоторые шведские символы (å ä и ö) перепутаны (просто квадратная коробка с несколькими буквами). Моя база данных настроена на utf8_general_ci, но я даже не подключен, так что это не имеет большого значения. Или я должен использовать другую кодировку? Это не шведский сайт, это все на английском, но я хочу å ä и ö работать в любом случае.Шведские символы и UTF-8

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Untitled document</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <link rel="stylesheet" href="default.css" /> 
</head> 
<body> 
    <p>åäö</p> 
</body> 
</html> 

В чем проблема? :/

Я использую WAMP, кстати.

Большого спасибо

+0

попробуйте другую кодировку, возможно, это сработает, потому что у меня такая же проблема, как и вы. – waqasahmed

+0

дважды проверьте, что вы действительно сохранили файл как UTF-8 – u0b34a0f6ae

+0

Я не знаю, в чем проблема - это выглядит правильно и сохраняет это в a.html. Я представляю его просто отлично в Safari, Chrome и Firefox на моем Mac , Какие браузеры и платформы визуализируют их неправильно для вас? Можете ли вы «просмотреть источник» в указанных браузерах, чтобы убедиться, что это действительно то, что они обслуживают? –

ответ

0

Я думаю, что сервер обслуживания страницы является переопределением кодировки. Вы можете попробовать: Setting charset information in .htaccess.

+0

Даже на стороне клиента это не работает. – waqasahmed

+0

did not work here – 2009-09-02 02:24:27

+0

Вы можете проверить кодировку страницы в любом из этих браузеров? –

0

Работает нормально для меня, либо дважды щелкнув файл (до тех пор, пока редактор поддерживает utf-8), либо обслуживает его с localhost (Apache, по умолчанию - UTF-8).

Вы действительно должны проверить, какие HTTP-заголовки отправляет ваш веб-сервер вместе с файлом. Если ваш предыдущий контент находится на английском языке (см. ASCII), у вас, возможно, никогда не было намека на то, что ваш сервер переопределял декларацию о вторжениях UTF-8 заголовком, обозначающим ISO-8859-1 или Windows-1252.

Вы можете взглянуть на заголовки в реальном времени с некоторыми расширениями Firefox, такими как Live HTTP Headers или HTTPFox. Если это является причиной неудачи, и ваш сервер Apache просто добавляет строку AddDefaultCharset utf-8 либо в файл maind httpd.conf, либо в файл .htaccess в папке webroot.

0

Это довольно старый, но я столкнулся с одной и той же проблемой, и я решил поделиться этим решением. Убедитесь, что ваш текстовый редактор сохраняет файл в кодировке utf-8. Недостаточно просто установить схему кодирования в метаданных на utf-8.

Вот как это работает в Dreamweaver:

1) Нажмите на Modify на верхней панели окна. 2) Выберите Свойства страницы 3) Выбрать Название/Кодировкой 4) Установите схему кодирования в UTF-8

Надеется, что это помогает.

14

Я знаю, что это старый, но я столкнулся с той же проблемой.

мне просто нужно, чтобы установить правильную кодировку:

<meta http-equiv="content-type" content="text/html" charset="ISO-8859-1" /> 
+0

Спустя несколько часов, пытаясь решить эту проблему, этот ответ сработал для меня. Но я вроде бы думаю, что это не должно, если только моя таблица MySQL: uft8_swedish_ci, такая же, как ISO-8859-1 – Henrik

0

Я просто хочу, чтобы дать мои мысли об этом, так как это могло бы помочь другим с этой проблемой.

За исключением установки кодировки на сайте, необходимо знать, какая кодировка используется в редакторе при создании страницы.

Я сделал ошибку много раз, чтобы использовать UTF8 на веб-странице, но в Notepad ++ (мой редактор выбора) Я использую стандартный набор символов, который является ANSI, поэтому мой å ä и ö получает омлет ...

Итак, если шведские буквы не отображаются правильно на сайте кодированного UTF8, проверьте исходный файл, чтобы ФАЙЛ был закодирован с кодировкой UTF8, а затем он должен работать.

1

Я думаю, что важно, чтобы ваш файл был закодирован так же, как вы установили свою кодировку в метатеге. Когда они меняются, я думаю, что есть проблемы. Поэтому вам нужно знать, к чему кодируется ваш файл!

Если файл кодируется в UTF-8 затем использовать:

<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> 

Если Yout файл закодирован с ISO-8859 затем использовать:

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

Когда я keept их обоих же, кодирование файла и charset в метатеге, с которой он работал. Удачи!

+0

Это просто решило мою проблему. Спасибо, Олоф. –

Смежные вопросы