Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > Perl

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 07.09.2003, 11:10
Timofey вне форума Посмотреть профиль Отправить личное сообщение для Timofey Найти все сообщения от Timofey
  № 1  
Timofey

Регистрация: Feb 2001
Сообщений: 127
По умолчанию работа с param() в CGI

вообщем надоело мне руками разбирать параметры из форм, стал использовать CGI модуль.

есть у меня куча полей в форме типа
field_1,field_2 ... field_20

Как мне в цикле обработать данные из формы, т.е.

for(my $i=1;$i<=20;$i++)
{
param(field_$i) .....
или
param('field_$i') .....
нужно что-то типа такого, только так не работает
}

Старый 13.09.2003, 17:22
soper вне форума Посмотреть профиль Отправить личное сообщение для soper Посетить домашнюю страницу soper Найти все сообщения от soper
  № 2  
soper

Регистрация: Sep 2002
Адрес: Novosibirsk
Сообщений: 85
Отправить сообщение для soper с помощью AIM Отправить сообщение для soper с помощью Yahoo
param('field_'.$i)




Может так, лучше цги библиотеку не использовать дырявая и тяжёлая


обычно параметры забираем так: для get

$buffer = $ENV{'QUERY_STRING'};
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$FORM{$name} = $value;
}


для post:


read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$FORM{$name} = $value;
}

Старый 19.09.2003, 13:02
wd_andrey вне форума Посмотреть профиль Отправить личное сообщение для wd_andrey Посетить домашнюю страницу wd_andrey Найти все сообщения от wd_andrey
  № 3  
wd_andrey
 
Аватар для wd_andrey

Регистрация: Dec 2000
Адрес: Киев
Сообщений: 19
Отправить сообщение для wd_andrey с помощью ICQ
Вот так и найдеш все параметры формы и пофиг как их послали (GET or POST).
Код:
%hash=param();
while(($key,$value) = each %hash){
   print $key." = ".$value;
}

Создать новую тему   Часовой пояс GMT +4, время: 00:03.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 00:03.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.