2009-10-13 38 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个值,而最小值1应该从此表单中选择。

+6

很难回答这个问题,因为你似乎甚至没有开始编写处理返回值的部分。 也许你可以通过Google了解编写CGI脚本的一些信息。 – 2009-10-13 07:27:21

+0

所示代码中的一些问题:第三行似乎有错误的大括号,并且FORM的ACTION属性似乎未被括在引号中。 – Svante 2009-10-13 08:20:37

+0

@Svante:我纠正了第一个问题。你可以请解释更多的ACTION属性。 – Space 2009-10-13 08:31:25

回答

3

你在问一个涉及许多新手级别概念的大问题。我认为你应该浏览一些HTML表单和CGI教程。这可能会回答你的许多问题。

CGI.pm模块可以帮助您处理表单。无论如何,你都可以处理数据。