Poichè può accadere di avere ad esempio 15 immagini, volendo avere 10 immagini per colonna, l'ultima riga avrebbe solo 5 colonne e le altre 5 risulterebbero mancanti pertanto inserisce le colonna vuote.
Il tr effettivamente può esserci il caso in cui sia ripetuta, sarebbe da fare cosi:
[php]
<?php
$numero = 4;
// Nome della cartella
$car = 'public/gallery/';
// Opendir è la funzione per aprire la cartella
$handle = opendir($car);
// Ciclo la cartella
$i = 0;
echo '<table>';
while (false !== ($files = readdir($handle)))
{
// Stampo i file
if ($files != '.' && $files != '..')
{
if($i==0)
echo'<tr>';
echo '<td><img src="'.$car.$files.'"></td>';
if($i==($numero-1))
echo'</tr>';
$i = $i==($numero-1) ? 0 : $i+1;
}
}
if($i<($numero-1))
{
while($i<=($numero-1))
{
echo '<td> </td>';
$i++;
}
echo '</tr>';
}
echo '</table>';
?> [/php]
Per le pagine si devi fare come al solito.