|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Yuri A. Wolf 2:5020/400 24 May 2002 22:07:36 To : Andrey Sapozhnikov Subject : Re: Hа: динамически подобрать кодировку -------------------------------------------------------------------------------- Andrey Sapozhnikov пишет в сообщении <3CED004A.7080607@icb.chel.su> ... :Artem Chuprina wrote: :> сможет. Известный глюк эксплорера. Вернее, глюк-то присутствует у всех :> браузеров, кроме (AFAIK) lynx - ни один не признается, в какой кодировке он :> отправил содержимое формы. У эксплорера он просто накладывается на привычку не :> терять данные - если нет возможности перекодировать их в предложенную :> сервером кодировку, перекодировка не производится (никаким стандартом такое :> поведение не запрещается). А глюк при этом приводит к невозможности узнать, :> какая была кодировка. : :Полагаю, что можно определиться с кодировкой по заведомо известной строке. К :примеру проанализировать в какой кодировке было получено слово "Отправить" :в параметре submit. Или вообще воспользоваться в качестве таблицы алфавитом :переданным при запросе в виде hidden поля (для определения неизвестных науке :кодировок). Т.е. выдаем с заведомо правильным charset-ом: : :<form action="script.cgi" method="post"> : <input type="hidden" name="xlat" value="абвгдежзий....."> : <input type="text" name="name"> :</form> : :а в скрипте получаем: : :my $xlat = $query->param('xlat'); # == 'ЮАБЦДЕФГХИ...', к примеру : :после чего перекодируем: : :my $name = $query->param('name'); :eval "\$name =~ tr/$xlat/абвгдежзий.../"; : :Андрей : :P.S. Сам знаю, что извращение. :P.P.S. Hе проверял, кому нужно - проверьте сами. : Идея хорошая :-) -- Юра --- ifmail v.2.15dev5 * Origin: OBK-Trade (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/6459945112ad.html, оценка из 5, голосов 10
|