http://qs1969.pair.com?node_id=272826


in reply to Converting large numbers of checkboxes to small number of params

Sticking with #3 above. (this is untested code... it probably won't compile, but you get the idea).
my @days = qw( Monday Tuesday Wednesday Thursday Friday Saturday Sunda +y ); my @hours = (7..21); # use the start hour for the value; my $out = qq(<tr> <td>Day</td>); for my $hour (@hours) { $out .= "<td>$hour - " . $hour + 1 . "</td>"; for my $day (@days) { $out .= qq( <tr> <td>$day</td>); for my $hour (@hours) { $out .= qq(<td><input type="checkbox" name="$day" value="$hour" />< +/td>); } $out .= qq(</tr>); } # so now you've printed out the form; # now to get the data out of it: use CGI; my $q = CGI->new; for my $day (@days) { @hours = $q->param($day); # the hours for the day are now in the array. $Hours->{$day} = \@hours; }