while( my @cols= splice @files, 0, 4 ) { my @table_cells; for( 0..3 ) { push @table_cells => $cols[$_] ? submit(-name=>'file', -value=> basename($cols[$_])) : ' '; } print Tr( {-align=>'center'}, td(\@table_cells) ); }