Mein bisheriges Zufallsbild wurde immer aus einem arry ausgewählt.
Da im Arry aber zu wenig Bilder angegeben sind, wiederholen sich die Bilder sehr oft.
Ich habe daran gedacht, alle Verzeichnisse(galerien) in ein Array zu schreiben, per zufall daraus eine Galerie zu wählen und alle Dateien aus dem Ordner Thumbnails der Gallerie in ein neues Array zu legen, aus dem dann zufällig das Bild gewählt wird.
Ordnerstruktur:
root
galerien
name
thumbnails
Das Problem besteht darin, dass das Array in das die Ordnernamen der Galerien geschrieben werden sollte leer bleibt!
Weiß jemand Abhilfe?
Da im Arry aber zu wenig Bilder angegeben sind, wiederholen sich die Bilder sehr oft.
Ich habe daran gedacht, alle Verzeichnisse(galerien) in ein Array zu schreiben, per zufall daraus eine Galerie zu wählen und alle Dateien aus dem Ordner Thumbnails der Gallerie in ein neues Array zu legen, aus dem dann zufällig das Bild gewählt wird.
Ordnerstruktur:
root
galerien
name
thumbnails
Code:
<?php //alle Verzeichnisse in Array $dir=opendir("galerien/"); while ($file = readdir($dir)) { if (is_dir($file) && $file!="." && $file!="..") { $dirs[] = $file; } } //zufällige Galerie auswählen mt_srand ((double)microtime()*1000000); $galerie = mt_rand(0,(count($dirs) - 1)); //print_r($dirs); $Pfad= $dirs[$galerie]."thumbnails/"; $i = 0; //Zaehler $i wird auf 0 gesetzt $dateien = array(); //Die Variable $dateien wird als Array deklariert if($Verzeichniszeiger=opendir($Pfad)) { while($Datei=readdir($Verzeichniszeiger)) { if ($Datei!=".") continue; if ($Datei!="..") continue; if (is_dir($Pfad.DIRECTORY_SEPARATOR.$Datei)) continue; if(eregi(".jpg$|.jpeg$",$Datei) == false) continue; echo $i; $dateien[$i++] = $Datei; //... wenn ja, Datei in Array dateien schreiben //Zaehler $i um 1 erhöhen } closedir($Verzeichniszeiger); } ?>
Weiß jemand Abhilfe?
Kommentar