2009-10-13 2 views
-1

Я написал код для создания формы для выбора нескольких значений. Ниже приведены некоторые строки моего кода, чтобы создать форму для выбора нескольких значений.Как обрабатывать данные, отправленные из формы HTML?

my $parser = Text::CSV->new(); 
open($csv_fh, '<', $csv_file) or die $!; 
my @headers = $parser->column_names($parser->getline($csv_fh)); 
print <<"EOF"; 
<FORM ACTION=$ENV{'SCRIPT_NAME'} METHOD=POST> 
<TR><TD VALIGN=TOP><B>Type<BR></B></TD> 
<SELECT NAME="$header" MULTIPLE> 
EOF 
       foreach my $header (@headers) { 
         chomp($header); 
         print "<OPTION VALUE=\"$header\">$header</OPTION>"; 
       } 
       print <<"EOF"; 
</SELECT></TD></TR> 
<CENTER><INPUT TYPE=SUBMIT VALUE=SUBMIT></CENTER> 
<INPUT TYPE=HIDDEN NAME=action VALUE=procnew> 
EOF 

Мне нужна помощь, если я выбираю 4 значения, то как читать эти значения и использовать их.

Также, пожалуйста, сообщите, есть ли возможность ограничить выбор значений. Например, я хочу ограничить выбор только 5 значений, и из этой формы следует выбрать min 1.

+6

Трудно ответить на этот вопрос, так как вы, похоже, даже не начали писать часть, которая имеет дело с возвращаемыми значениями. Возможно, вы можете использовать Google для написания сценариев CGI. – 2009-10-13 07:27:21

+0

Некоторые проблемы в показанном коде: в третьей строке есть неуместная замыкающая скобка, и атрибут ACTION для FORM, похоже, не заключен в кавычки. – Svante

+0

@Svante: Я исправил первый. Не могли бы вы подробнее объяснить атрибут ACTION. – Space

ответ

3

Вы задаете большой вопрос, который включает в себя много концепций уровня новичка. Я думаю, вам нужно пройти через некоторые HTML-формы и учебники CGI. Вероятно, это ответит на многие ваши вопросы.

Модуль CGI.pm может помочь вам обработать форму. Вы можете обрабатывать данные так или иначе, как вам нравится.

Смежные вопросы