2012-10-12 22 views
0

Это слово вызывает у меня проблемы. BrúðkaupПроблема кодирования символов в XML

В моей cms, в верхней части веб-страницы у меня есть эта строка.

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

База данных хранит слово выше как Brúðkaup и имеет набор символов latin1

В верхней части моего файла XML У меня есть следующие:

<?xml version="1.0" encoding="UTF-8" ?> 

ли база данных с использованием неправильно кодировка символов? Даже если это так. Почему в html я указываю кодировку utf8, и слово отображается правильно. Но в XML я делаю что-то подобное, а это не так?

XML генерируется PHP. Я попытался добавить в свой скрипт следующее.

header('charset=utf-8'); 

Это не имеет никакого значения. Есть идеи?

ответ

0

Поскольку данные кодируются латинским (= ISO-8859-1 или windows-1252), его необходимо преобразовать в UTF-8 для отображения на странице в кодировке UTF-8. Инструменты для этого зависят от программного обеспечения, которое вы используете для получения данных из базы данных, и помещаете его в документ HTML или XML.

Если файл HTML отображается правильно, то такое преобразование было сделано в какой-то момент, или HTML-файл на самом деле интерпретируется браузером как кодированный латинцем1. Это произойдет, если сервер отправит заголовок HTTP Content-Type, который задает параметр charset для этого эффекта. HTTP-заголовки переопределяют теги meta.

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