The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"AJAX + charset"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [ Отслеживать ]

"AJAX + charset"  +/
Сообщение от primus on 24-Окт-06, 17:59 
Есть HTML документ в кодировке KOI8-R, он имеет META с content="text/html; charset=KOI8-R".
В браузере (IE  в Windows, Mozilla в Linux) текст отображается корректно.
НО один из элементов в результате выполнения кода с использованием AJAX обновляется,
с сервера в него добавляется порция текста в кодировке KOI8-R же, и видно его в ДРУГОЙ кодировке (похоже на ISO8859-1).
Вопрос: Как заставить браузер выводить весь текст в ОДНОЙ и ТОЙ ЖЕ кодировке?
Спасибо.
Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

  • AJAX + charset, uldus, 22:27 , 24-Окт-06, (1)  
    • AJAX + charset, primus, 23:02 , 24-Окт-06, (2)  
      • AJAX + charset, uldus, 23:09 , 24-Окт-06, (3)  
        • AJAX + charset, primus, 20:23 , 26-Окт-06, (4)  
          • AJAX + charset, uldus, 16:39 , 27-Окт-06, (5)  
  • AJAX + charset, gangrel, 17:38 , 27-Окт-06, (6)  
  • AJAX + charset, svazist, 19:27 , 29-Окт-06, (7)  
    • AJAX + charset, vedemir, 19:11 , 18-Сен-09, (8)  

Сообщения по теме [Сортировка по времени | RSS]


1. "AJAX + charset"  +/
Сообщение от uldus (ok) on 24-Окт-06, 22:27 
>с сервера в него добавляется порция текста в кодировке KOI8-R же, и
>видно его в ДРУГОЙ кодировке (похоже на ISO8859-1).
>Вопрос: Как заставить браузер выводить весь текст в ОДНОЙ и ТОЙ ЖЕ
>кодировке?

В момент вывода порции на запрос XMLHTTPRequest выдавать скриптом заголовок с "charset=koi8-r" и проверить чтобы отдавался оменно он, а не подменялся сервером. В HTML браузер в первую очередь на meta смотрит.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "AJAX + charset"  +/
Сообщение от primus on 24-Окт-06, 23:02 
>
>В момент вывода порции на запрос XMLHTTPRequest выдавать скриптом заголовок с "charset=koi8-r"
Скрипт написан на php и в его начало я вставил header() с указанием кодировки.
При выполнении выполнении скрипта в консоли (php script_name.php) видно,
что описание кодировки выдается.
>и проверить чтобы отдавался оменно он, а не подменялся сервером. В
>HTML браузер в первую очередь на meta смотрит.
Как проверить? (поправить?)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "AJAX + charset"  +/
Сообщение от uldus (ok) on 24-Окт-06, 23:09 
>Как проверить? (поправить?)

curl -I http://хост/путь/script_name.php
или в Firefox поставить LiveHTTPHeader

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "AJAX + charset"  +/
Сообщение от primus on 26-Окт-06, 20:23 
>или в Firefox поставить LiveHTTPHeader
Извините за назойливость, а если "обобщенный" браузер?


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "AJAX + charset"  +/
Сообщение от uldus (ok) on 27-Окт-06, 16:39 
>>или в Firefox поставить LiveHTTPHeader
>Извините за назойливость, а если "обобщенный" браузер?

LiveHTTPHeaders - это плагин для Firefox который показывает HTTP заголовки для отладки.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "AJAX + charset"  +/
Сообщение от gangrel on 27-Окт-06, 17:38 
>Есть HTML документ в кодировке KOI8-R, он имеет META с content="text/html; charset=KOI8-R".
>
>В браузере (IE  в Windows, Mozilla в Linux) текст отображается корректно.
>
>НО один из элементов в результате выполнения кода с использованием AJAX обновляется,
>
>с сервера в него добавляется порция текста в кодировке KOI8-R же, и
>видно его в ДРУГОЙ кодировке (похоже на ISO8859-1).
>Вопрос: Как заставить браузер выводить весь текст в ОДНОЙ и ТОЙ ЖЕ
>кодировке?
>Спасибо.

пропишите средствами Apache кодировку для всего хоста.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "AJAX + charset"  +/
Сообщение от svazist on 29-Окт-06, 19:27 
>Есть HTML документ в кодировке KOI8-R, он имеет META с content="text/html; charset=KOI8-R".
>
>В браузере (IE  в Windows, Mozilla в Linux) текст отображается корректно.
>
>НО один из элементов в результате выполнения кода с использованием AJAX обновляется,
>
>с сервера в него добавляется порция текста в кодировке KOI8-R же, и
>видно его в ДРУГОЙ кодировке (похоже на ISO8859-1).
>Вопрос: Как заставить браузер выводить весь текст в ОДНОЙ и ТОЙ ЖЕ
>кодировке?
>Спасибо.

Если мне память не изменяет, то объект который реализует асинхронные запросы в браузере корректно работает только с UTF-8.

Использование UTF гарантирует корректную работу со всеми браузерами

P.S. А HTTP заголовки нужно корректно отдавать, так же, воизбежание головной боли - заголовками запрещать кеширование ассинхронных запросов.
в IE они жёстко кешируются.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "AJAX + charset"  +/
Сообщение от vedemir on 18-Сен-09, 19:11 
>>Вопрос: Как заставить браузер выводить весь текст в ОДНОЙ и ТОЙ ЖЕ
>>кодировке?
>>Спасибо.

header с указанием кодировки НЕЛЬЗЯ изменять после вывода в браузер хотя бы одного тега, до вывода - пожалуйста: создайте функцию, которая отконвертирует весь текст так как вам нужно до того, как в браузер пошли первые теги.

>Если мне память не изменяет, то объект который реализует асинхронные запросы в
>браузере корректно работает только с UTF-8.

А если мне не изменяет память, то корректности можно добиться и с другими кодировками используя: encodeURIComponent(otpravlenayaPeremennayaKrivoyKodirovkiNeUTF)


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема



Закладки на сайте
Проследить за страницей
Created 1996-2019 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру
Hosting by Ihor