![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Greendrake |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 364 Регистрация: 14.7.2005 Репутация: 1 Всего: 6 |
На страницах использую отправку данных из форм методом POST. При этом часть форм отправляется как обычно, а часть - через XMLHttpRequest. Как известно, этот зверь безапелляционно кодирует отправляемые данные в UTF-8 (сама страница в windows-1251).
Сервер по умолчанию не знает, каким из этих двух способов была отправлена форма. В то же время, если она отправлена в UTF-8, полученные данные нужно преобразовать в windows-1251. Если такое преобразование делать всегда, то когда данные отправляются уже в windows-1251 - они будут потеряны. Если преобразования не делать, данные в UTF-8 будут абра-кадаброй. Поэтому нужно как-то отпределить charset, к котором была послана форма. Пытаюсь смотреть apache_request_headers(): Array ( [Accept] => image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* [Referer] => http://localhost/_u.html [Accept-Language] => ru [Content-Type] => application/x-www-form-urlencoded [Accept-Encoding] => gzip, deflate [User-Agent] => Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Avant Browser; Avant Browser) [Host] => localhost [Content-Length] => 47 [Connection] => Keep-Alive [Cache-Control] => no-cache ) Но тут нету. Можно конечно при отправке из XMLHttpRequest посылать некий ключ, указывающий что это данные в UTF-8. Можно конечно вообще полностью перейти на UTF-8. Но муторно это. Можно ли сделать сабж на сервере? |
|||
|
||||
| Eugene_Bond |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 138 Регистрация: 3.9.2006 Репутация: 1 Всего: 4 |
может это поможет? http://tony2001.phpclub.net/misc/detect_charset/
|
|||
|
||||
| IZ@TOP |
|
|||
![]() Панда-бир! ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: 1 Всего: 73 |
Eugene_Bond, UTF-8 Не определяет.
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
| Eugene_Bond |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 138 Регистрация: 3.9.2006 Репутация: 1 Всего: 4 |
IZ@TOP, дык на то он и опенсоурс чтобы доделать чего не хватает.. ;)
Добавлено @ 15:04 да и по условию задачи достаточно определить вин1251 или нет. если нет -- считаем что утф |
|||
|
||||
| MuToGeN |
|
|||
![]() Лесник ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4379 Регистрация: 15.8.2002 Где: Москва Репутация: 4 Всего: 32 |
пользую что-то типа
-------------------- Three pings for the token rings, Five pings for the UNIX machines, Hundred pings for the broken links, One special ping to check them all Through Simple Network Management Protocol! |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Для профи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |