Anzeige aller Bilder in einem Ordner

Black-Rider007

New Member
Hallo,
ich möchte über PHP alle Bilder in einem Ordner anzeigen lassen.
Habe ich zum Beispiel den Ordner Mein Geburtstag 2007. Ich möchte mir über PHP alle Bilder in dem Ordner untereinander anzeigen lassen!
Ich habe nämlich keine Lust jedes Bild einzeln einzubinden!
Weiß jemand wie ich das machen kann??
MFG
Black-Rider
 
Angenommen, in dem Verzeichnis sind nur Bilder:
PHP:
// http://www.php.net/manual/de/function.opendir.php#77312
function arrayDir($folder){
  $files = array();
  if ($handle = opendir($folder)) {
    while (false !== ($dir = readdir($handle))) {
      if ($dir != "." && $dir != "..") {
        if(!is_dir($folder.$dir.'/')) {      
          $files[] = $folder.$dir;
        }
      }
    }
    closedir($handle);
  }
  return $files;
}

$dir = $_SERVER['DOCUMENT_ROOT'].'/pfad/zum/bilderordner/';
$files = arrayDir($dir);


for ($i=0;$i<=count($files)-1;$i++) {
  echo '<img src="pfad/zur/galerie/'.$files[$i].'" alt="Bild '.$i.'"><br />';
}

Nicht getestet, nicht geprüft - keine Haftung!
</span>
 
Hey,
erstmal thx.
Wo liegt der Unterschied zwischen
Pfad zum Bildordner und Pfad zur Gallerie?
Edit: Problem behoben(habe das Script nen bisschen verändert).

Nun noch eine Frage ich möchte mir nur jeweils 10 Bilder pro Seite anzeigen lassen! Wie mach ich das??

Sorry, in den Bereichen haben ich mich noch nie mit PHP beschäftigt, da ich mehr immer nur andere Sachen progge^^

MFG
Black-Rider
 
Last edited by a moderator:
$dir benötigt den absoluten Pfad (z.B. /var/www/vhosts/domain.tld/httpdocs/pics/AK07) und das andere sollte nur /pics/AK07 sein.

Folglich können wir das Script auch folgendermaßen schreiben:
PHP:
// http://www.php.net/manual/de/function.opendir.php#77312
function arrayDir($folder){
  $files = array();
  if ($handle = opendir($folder)) {
    while (false !== ($dir = readdir($handle))) {
      if ($dir != "." && $dir != "..") {
        if(!is_dir($folder.$dir.'/')) {      
          $files[] = $folder.$dir;
        }
      }
    }
    closedir($handle);
  }
  return $files;
}

$rel_path = '/pics/AK07/';
$abs_path = $_SERVER['DOCUMENT_ROOT'].$rel_path;
$files = arrayDir($abs_path);


for ($i=0;$i<=count($files)-1;$i++) {
  echo '<img src="'.$rel_path.$files[$i].'" alt="Bild '.$i.'"><br />';
}

Wenn das nicht geht, lass Dir mal $_SERVER['DOCUMENT_ROOT'] ausgeben mit echo und poste das hier.
 
Back
Top