ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] URL encoding



In <Pine.LNX.4.03.9810141145220.3442-100000@brass.fe.msk.ru> Victor B Wagner 
(vitus@ice.ru) wrote:
VW> On Tue, 13 Oct 1998, Artem Chuprina wrote:

>> Привет!
>>
>> Народ, кто чем кодирует строки для передачи их через URL под mod_perl? Как
>> в предположении, что CGI.pm используется, так и в предположении, что не
>> используется.
VW> в CGI.pm - с помощью self_url.
VW> Надо только похакать CGI.pm чтобы он русские буквы НЕ КОДИРОВАЛ.
VW> Тогда будет хорошо

VW> Для этого строчку
VW>  $toencode=~s/([^a-zA-Z0-9_\-.])/uc sprintf("%%%02x",ord($1))/eg;
VW> в sub escape
VW> поменять на
VW>   $toencode=~s/([^a-zA-Z0-9_ю-ъЮ-Ъ\-.])/uc sprintf("%%%02x",ord($1))/eg;
VW> (если, конечно, используется koi8).

Вот. CGI.pm живет в perl'е. Я уж не знаю -- хорошо ли это делать hardcoded,
впрочем.... Проблема вот в чем: если это исправление не сделать, то строки
с русскими буквами будут выданы как %af какой-нибудь и от этого будет плохо
при использовании перекодирования "на лету". Но что делать, если скрипты
живут в windows-1251 ?

To Alex: CGI.pm может как-то выяснить -- какую от нее кодировку жаждут получить
на выходе ?



=============================================================================
=               Apache-Talk@lists.lexa.ru mailing list                      =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
=       Archive avaliable at http://www.lexa.ru/apache-talk                 =



 




Copyright © Lexa Software, 1996-2009.