Zufallsbild komplexer...

-Ener-

Erfahrenes Mitglied
Also ich muss euch das erst mal Bildhaft darstellen wie meine Ordnerstruktur ist:

http://www.trancebeats.com/struct.jpg

Ich habe ein zufallsscript welches in [dir1] liegt und in [dir3.1*] und [dir3.2*] liegen thumbnails. Das zufallsscript soll aus diesen 2 ordnern bei jedem refresh ein anderes bild anzeigen im script welches in [dir1] liegt... Das ganze muss voll dynamisch sein weil:

1.) in dir2 immer wieder neue Ordner eingefügt werden welche wieder die unterordner haben mit *

2.) die Ordnernamen manchmal geändert werden

Ich hoffe ihr versteht was ich meine und könnt mir helfen?!

hier mein Script welches zur Zeit einen bestimmten thumbnail-Ordner ausliest:

PHP:
<?php
$foto = array(); 
$ordner = "./Gallery/TeSt/thumbnails/"; 
$handleordner=opendir ($ordner); 
while (false != ($file = readdir ($handleordner))) 
{ 
	if ($file != "." && $file != ".."){ 
		array_push($foto,"<TD WIDTH=146 HEIGHT=110 BACKGROUND=Gallery/TeSt/thumbnails/$file BORDER=0>"); 
		} 
		} 
		closedir($handleordner); 
		shuffle($foto); 
		echo $foto[0]; 
?>

zur erklärung: [dir2] = Gallery, [dir3.1] = TeSt, [dir3.1*]=thumbnails
 
Zuletzt bearbeitet:
hmm..
bräuchtest 2 while schleifen, die eine liest dir2 aus und pro ordner dann eine schleife für das array...
wees net ob das geht aber naja...
PHP:
<?php
$foto = array();
$ordner = "./Gallery/TeSt/";
$handleordner=opendir ($ordner);
while (false != ($file = readdir ($handleordner)))
{
    if ($ordner != "." && $ordner != ".."){
        while(false != ($file = readdir (opendir($ordner))))
        {
           if ($file != "." && $file != ".."){
          array_push($foto,"<TD WIDTH=146 HEIGHT=110                          BACKGROUND=Gallery/TeSt/thumbnails/$file BORDER=0>");
          }
        }
    }
 }
        //closedir($handleordner);
        shuffle($foto);
        echo $foto[0];
?>
 
Also wenn ich das richtig verstanden habe möchtest du alle Unterordner von Dir1 haben egal wie sie heißen, oder?
So wie es aussieht willst du dann auch - falls vorhanden - die Unterordner der Dir1-Unterordner usw...
Das könntest du mit einer rekursiven Funktion machen, der immer ein Ordner übergeben wird...falls dann noch ein Ordner in diesem Ordner ist, ruft sich die Funktion selbst auf.
Die Ergebnisse schreibt die Funktion in ein Array, aus dem du dir dann Zufallsbilder holen kannst...
Soweit zur Theorie... :-)

greetz
daddz
 
einfacher wäre das wohl zu lösen wenn du die bilder mit ordner in eine DB zusätzlich einträgst. Hast du eine MySQL DB zur Verfügung?
 
Das denke ich nicht, da ich sonst alle Bilder ja erstma in die DB eintragen müsste, diese Variante ist dafür ungeeigneter, und JA ich hab ne DB aber wenn ich das mit ner DB machen würde hätte ich euch nicht fragen müssen =) Aber danke für das Interesse!
 
naja bei meiner Galerie mach ich 4 klicks und die galerie steht :)

Beim galerie hinzufügen werden alle Bilder mit ner schleife auf dem ordner ausgelesen und in die DB eingetragen, da muss ich nichts selbst machen, und dann klappt das alles einwandfrei. Wollt das noch hinzufügen :)
 
Zurück