|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Artem Chuprina 2:5020/400 11 May 2004 14:19:49 To : Andrei Protasovitski Subject : Re: Разобрать форму. -------------------------------------------------------------------------------- Andrei Protasovitski -> Artem Chuprina @ Tue, 11 May 2004 06:00:40 +0000 (UTC): >> >> AP> Есть ли в природе что-либо типа CGI::param(), чтобы >> >> AP> разобрать >> >> переданные AP> из формы данные любым методом: GET, POST, >> >> multipart и пр.? >> >> AP> Уж очень не хочется тянуть целый CGI ради одной param(). В >> >> AP> принципе, я >> >> и AP> сам могу написать, но если есть, не откажусь. >> >> Ты бы вместо переписывания посмотрел бы на исходники собственно CGI >> AP> Я сначала посмотрел, посидел полчасика, устал, отдохнул и написал в >> AP> эху. Так что вопрос в силе. В принципе, GET, POST и multipart - >> AP> обязательно. Остальные экзотические типы - просто определять и >> AP> игнорировать. >> Плохо, видать, смотрел. Там помимо этой param(), почитай, и нету >> ничего. Почти все функции генерирования HTML либо совсем >> автогенерируемые, либо компилируемые по мере надобности. Так что по >> сути тебе, если нужна CGI'шная param() (плюс upload(), естественно), оно >> у тебя как раз в CGI.pm и выливается... AP> Там чересчур много функций используется в самой param. Лазить по AP> ним и пытаться понять, для чего это надо - дольше, чем написать AP> самому. Быстрее всего - взять CGI.pm как есть. AP> Я тут нашел в паутине кое-что по каждой из форм, теперь осталось AP> только собрать воедино и на выходе сделать хэш. Я уже почти AP> закончил. Хэш - это ты зря... Закладываться на то, что у тебя ни в одной форме никогда не будет полей с множественным выбором - как-то не здраво. Кроме того, CGI еще умеет некоторых гитик на тему генерации форм - например, лечить от того, что если checkbutton не нажат, этого поля браузер тебе вообще не отдаст, и ты даже не узнаешь, что оно было в форме. Здорово мешает автоматизации процесса. -- Artem Chuprina RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/122.256, ICQ: 13038757 --- ifmail v.2.15dev5.3 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по:
Архивное /ru.cgi.perl/2560624e57f55.html, оценка из 5, голосов 10
|