use strict; use warnings; use CGI; # do some other stuff..... # either functional style... my @students = param('student[]'); # OR OO-style... my $query = CGI->new; my @students = $query->param('student[]'); # OR Gangnam-style..... # no just kidding :-) # now process your student input, # remember to check no one is sending you weird data ..... foreach my $student (@students) { # wibble }