Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Проблема кодировки JavaScript + AJAX + XML + PHP


Автор: Reverent 29.6.2007, 20:52
Здравствуйте.
Недавно стал разрабатывать систему обработки и добавления шаблонов на сайт и столкнулся с такой проблемой.
Создаю запрос через XMLHttpRequest на страницу с кодом PHP. Который генерирует XML код. Который в последствии будет обрабатываться JavaScript’ом. Но почему-то не могу получить данные в русской кодировке. Пишу следующий код в начале php файла:
Код

header("Content-Type: text/html; charset=windows-1251");

Все начинает работать, пока не добавляю эту строку:
Код

header("Content-type: application/xml");

Тогда добавляю еще и эту:
Код

echo '<?xml version="1.0" encoding="WINDOWS-1251" ?>';

Но это не приводит к положительному результату, кодировка все равно не меняться и остается «корявой».
Причем проблема заключается еще в том, что этот проект предназначен для Испанской фирмы, которая будет использовать Английский и соответственно свой родной язык.
Помогите, кто может!!!

Автор: vasac 30.6.2007, 11:31
Зачем вы второй раз выводите Content-Type, да еще и с другим значением?
Кириллическая windows-1251 не лучший выбор для испанского языка. Используйте UTF и не будет проблем ни с мультиязычностью, ни с обменом данными.

Автор: Reverent 30.6.2007, 13:43
А почему когда я начинаю использовать UTF-8 происходит проблема с русской кодировкой. Ведь как я знаю она должна поддерживать кирилические символы???

Автор: vasac 30.6.2007, 16:25
Так вы что все-таки используете? 1251 или utf?
И почему отправляете два раза Content-Type ?

Автор: Reverent 1.7.2007, 06:34
Цитата(vasac @  30.6.2007,  16:25 Найти цитируемый пост)
Так вы что все-таки используете? 1251 или utf?
И почему отправляете два раза Content-Type ? 


Понимаеш я не знаю какую оптимальную кодировку выбрать UTF-8, 1251, или вобще ISO нужно использовать - ведь мне нужна поддержка английского и испанского???

Автор: vasac 1.7.2007, 13:31
Причем тут 1251? Она кириллическая. Как вы хотите использовать кириллическую кодировку для испанского языка? Для испанского своя ANSI-кодировка есть, то ли отдельная, то ли европейская-1252, но лучше использовать UTF.
Изначальный вопрос решился?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)