Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Проблемы с кодировкой в AJAX (https://javascript.ru/forum/misc/14445-problemy-s-kodirovkojj-v-ajax.html)

alxcube 17.01.2011 01:07

Проблемы с кодировкой в AJAX
 
Здравствуйте!
Надумал тут выучить js, и для практики написать userjs для форума своей локальной сети, чтобы ежеминутно проверял личные сообщения и выводил информацию (количество, темы сообщения со ссылкой и т.п.) в блок. Пока только начал, для эксперимента выводил в блок всю полученную страницу, и был огорчен: все кириллические символы стали знаками вопроса в ромбике. помогает только если в настройках оперы для этой страницы явно указать w-1251. а дефолтно-то стоит автоопределение. как можно избавиться от этой проблемы?
заранее благодарен за помощь.

PS: никаких манипуляций с серверной стороной производить не могу.

Askhsiv_1 17.01.2011 02:30

в PHP в самом начале файла пишешь:
header('Content-Type: text/html; charset=utf-8');


когда выводишь данные, тобишь возвращаешь AJAX'у используй iconv()
echo iconv("UTF-8", "WINDOWS-1251", $variable);


а когда AJAX'ом посылаешь данные в PHP делай так:
encodeURIComponent(variable)


удачи!

DooMer 18.01.2011 11:52

Askhsiv_1,
Цитата:

Сообщение от alxcube (Сообщение 88298)
PS: никаких манипуляций с серверной стороной производить не могу.

alxcube,
а Вам советую погуглить на тему "iconv in javascript"

Kolyaj 18.01.2011 12:09

Если к серверу доступа не имеете, вам ничто не поможет.

Цитата:

Сообщение от DooMer
а Вам советую погуглить на тему "iconv in javascript"

В JavaScript в таких случая приходят самые настоящие знаки вопроса, в JS не приходят байты, к нему приходят символы в Unicode (не путать с UTF).


Часовой пояс GMT +3, время: 08:01.