Информация, передаваемая в формах, и в коде страниц, генерируемых прогами типа FrontPage иногда предстает в виде: %3D%25CB%25CF%25C4%25C9%25D2%25CF%25D7%25CB%25C1%2B%25D3%25D4%25D2%25C1%25CE%25C9%25C3%25D9%26tb%3D1 кто-нибудь встречал программы перекодировки таких вот строк? (FrontPage не предлагать!)
>> в формах Это где? В url? >> в коде страниц Может быть всё-таки в коде в виде &1234; ? А не unicode-ли там?
Вообщето это передача данных методом get. Получить ее можно так: (Язык Perl) $buffer = "$ENV{'QUERY_STRING'}"; @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $name =~ tr/+/ /; $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $Form{$name} = $value; } Если данные будут переденны в параметре name (script.cgi?name=%3D%25CB%25CF%25C4%25C9%25D2%25CF%) То результат будет в переменной $Form{name} Вывести его можно так : #Эта строчка, если идет вывод в браузер print "Content-type: text/html\n\n"; #Собственно вывод print "$Form{name}"; А фронпаж гененрирует такой код: &1234; luka прав
Nekto, use CGI; проще и надёжнее имхо. Zombie, под win вряд ли будет готовенькое. Смысла нет в такой программе.
Zombie, есть модули, вот luka правильно указал на один из них. use CGI qw(param); $name=param("name"); Я просто хотел описать процесс раскодирования.