Ciao di quello script che hai linkato modifica il file "galleria.class.php" in questo modo
Cosi' facendo le immagini saranno ordinate per data di ultima modifica. In caso alcune abbiano la stessa data saranno ordinate per il nome che hanno.codice:<?php // file galleria.class.php // // Marco Barcaro // 15/12/2004 // // questa classe richiede le librerie grafiche GD // // Testato con Apache 1.3.29, PHP 4.3.10, GD 2.0.28 su winXP // Testato con Apache 1.3.26, PHP 4.1.2, GD 2.0 (no supporto x GIF) su Debian // Testato con Apache 1.3.33, PHP 4.3.9, GD 2.0 su Linux // Testato con Apache 1.3.31, PHP 4.3.3, GD 2.0 su Linux class galleria{ function galleria($ext_permesse){ $this->ext_permesse=$ext_permesse; $this->immagini=array(); } function leggi_dir($path){ // LETTURA DELLA DIRECTORY if (!is_dir($path)) echo "$path NON E' UNA DIRECTORY VALIDA!"; else { $d = dir($path); $i=0; while ($immagine = $d->read()) { if ($immagine != "." && $immagine != ".." && in_array(array_pop(explode(".",$immagine)),$this->ext_permesse)){ $appo[$i]['nome']=$path.$immagine; $appo[$i]['data']=date ("F d Y ",filemtime($path.$immagine)); $i++; // $this->immagini[]=$path.$immagine; } } $d->close(); } $data_mod = array(); $nomi = array(); foreach($appo as $k=>$v){ $data_mod[$k] = strtotime($v['data']); $nomi[$k] = $v['nome']; } array_multisort($data_mod,SORT_DESC,SORT_STRING, $nomi,SORT_ASC,SORT_STRING, $appo); $ct=0; while($ct<count($appo)){ // echo "Nome: ".$appo[$ct]['nome']." Data: ".$appo[$ct]['data']." "; $this->immagini[]=$appo[$ct]['nome']; $ct++; } } function stampa(){ // PREPARAZIONE DELL'OUTPUT COME TABELLA HTML $output="<table>\n"; $output.="<tr>\n"; $cont=1; foreach($this->immagini as $immagine){ $output.="<td><img src=\"".FILE_RIDIMENSIONA."?immagine=$immagine\" alt=\"$immagine\" /></td>\n"; if ($cont % NUMEROCOLONNE == 0) $output.="</tr><tr>\n"; $cont++; } if (($cont-1) % NUMEROCOLONNE == 0) $output=substr($output,0,-5)."\n"; $numero_immagini=count($this->immagini); $temp=ceil($numero_immagini/NUMEROCOLONNE)*NUMEROCOLONNE-$numero_immagini; for ($i=0;$i<$temp;$i++) $output.="<td> </td>\n"; if ($temp != 0) $output.="</tr>\n"; $output.="<table>\n"; // OUTPUT DELLA TABELLA echo $output; } } ?>
Saluti
P.s. Il codice l'ho modificato al volo potrebbero anche esserci degli errori. Inoltre ho aggiunto 2 cicli che indubbiamente non sono il top per l'efficenza ma se devi lavorarci solo 20 immagini non dovresti aver problemi.

Rispondi quotando