Насчет кодировки utf (AJAX)
[HTML]
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<form method="get" action="test.php">
<input type="text" name="input"><input type="submit" value="go">
</form>
[/HTML]
тест получает всё норм.
А вот если через ajax запрос, он ничего не получает. Хотя в HEAD'е стоит кодировка utf (всё также).
Помогите понять как работает эта тема?
Что значит: "ничего не получает"? Если он ничего не получает, значит неверно происходит отправка. Смотрите дебаггером JS код. Может где ошибка есть
не получает только то что по-русски
Цитата: mavneon
не получает только то что по-русски
а на каком основании предположение о неполучении?
ЗЫ во загнул )
А ещё было бы неплохо привести пример кода, которым вы все это дело обрабатываете. А так же научиться верно составлять вопросы для форума
http://www.dklab.ru/ советую попробовать, многие вопросы отпадут в т.ч. и с кодировкой.
Есть очень здоровская AJAX библиотека от Дмитрия Котерова -
пардон. русские он отправляет в ASCII
По крайне мере не видя кода можно так предположить.
Кстати совет использовать сторонний фреймворка, а не нативный JS здравая.
А посчет работы с кодировкой - то просто надо знать в какой кодировке приходят данные.
А автору я все таки посоветовал бы прислушаться и показать код отправки и приема запроса.
Цитата: UAS
А посчет работы с кодировкой - то просто надо знать в какой кодировке приходят данные.
В случае GET запроса данные кодируются алгоритмом URLencode (в терминах юникода это называется UCS), данный метод кодирования не относится к кодировкам (т.е. к машинному представлению данных, в терминах юникода это называется UTF). При этом сами данные уходят в кодировке страницы, но на самом деле после URLencode это уже не важно, т.к. там уже все равно только символы из первой части ASCII, а в наше время даже для национальных кодировок они едины (диапазон позиций 0-127).
POST данные уходят в UTF-8.
Поэтому знать кодировку входных данных не нужно.