Se $array_id è l'array con gli id e $get_id è la variabile con gli id da passare via get:
Codice PHP:
$get_id="(";
$n=0;
foreach( $array_id as $t ){
if($n>0) $get_id.=",";
$get_id.=$t;
}
$get_id.=")";
// a questo punto la variabile $get_id sarà una cosa del tipo: (123,456,789)
Nella query basterà mettere WHERE ID IN ".$_GET['get_id']." LIMIT ...
P.S.: per randomizzare l'array c'è la funzione shuffle di php, però non mi piace molto (anche se va molto meglio del RAND() di mysql).
Per questo io mi sono creato una funzione simile che usa però mt_rand(). Questa è la funzione:
Codice PHP:
// funzione per randomizzare un array usando mt_rand al posto di shuffle
function random_array($a){
$n=count($a); // numero di elementi nell'array $a
// creo un array $c di numeri casuali lungo quanto l'array a
$c=array();
for($i=0;$i<$n;$i++) $c[]=mt_rand(1,$n+1);
$na=array(); // nuovo array che uscirà dalla funzione
for($i=0;$i<$n;$i++){
// trovo il massimo elemento dell'array di numeri casuali $c
$max=max($c);
// trovo la posizione dell'elemento max
$position=array_search($max,$c);
// aggiungo l'elemento nella posizione dell'array originale
$na[$i]=$a[$position];
// azzero l'elemento dall'array $c
$c[$position]=0;
}
return $na;
}
Se qualcuno vuole metterci le mani per migliorarla ben venga.