use CGI; my $q = CGI->new; my @list = map { $q->param('xxx'.$_) } 1 .. $q->param('xxxc'); # values now sequential in @list. #### foreach my $index (1 .. $q->param('xxxc') ) { my $value = $q->param('xxx' . $index); # now do whatever with the value ... } #### %INPUT = $q->Vars;