Codice PHP:
<?php
$immagini
[0]['immagine']="0.jpg";
$immagini[0]['url']="link1";

$immagini[1]['immagine']="1.jpg";
$immagini[1]['url']="link2";

$immagini[2]['immagine']="2.jpg";
$immagini[2]['url']="link3";

// e così via

// Mischi l'array per la generazione dell'effetto random
shuffle($immagini);

// Dal tuo array randomizzato recuperi le prime 9
$prime9 array_slice($immagini,0,9);

$indice=1;
echo 
"<table>";
echo 
"<tr>";
for (
$i=0$i<9$i++)
{
echo 
"<td>[url=".$prime9[$i][url]."][img].$prime9[$i][immagine].[/img][/url]</td>";

    if (
$indice == 0)
    {
    echo 
"</tr>";
    echo 
$indice "<tr>" "" ;
    }
$indice++;
}
echo 
"</table>";
?>
Ho apportato le due modifiche di cui ti dicevo stasera. Non è che ci volesse molto. Per l'allinemanto della tabella fallo tramite css.
<style type="text/css">
table
{
margin:auto;
text-align:center;
}
</style>
da mettere nell'head del documento.

P.S. Ho visto che hai aperto un altro thread. Non è il caso visto qualcuno prima o poi ti risponde e i mod si inca**ano.

P.P.S. Lo script non va inserito in ogni cella. Ti genera la tua tabella di 3 righe x 3 colonne. L'unica cosa che devi modificare è il nome dei collegamenti e quello delle foto e aggiungere
$immagini[0]['immagine']="0.jpg";
$immagini[0]['url']="link1";

tante volte col numero incrementato tra le parentesi quadre quante sono le tue foto tra quelle da cui devi estrarne casualmente 9. Più chiaro di così non saprei che dirti.