Partner & Ads


scripthosting.net Partner-Banner
matpo.de Partner-Banner

Flattr this

Codeschnipsel

Zurück zur Übersicht

Bilder eines Verzeichnisses zum Durchklicken

Fragen oder Anmerkungen zum diesem Codeschnipsel?
Im zugehörigen Diskussionsthema im Support-Forum wird Ihnen weitergeholfen!

Dieser Codeschnipsel bedient sich des gleichen Prinzips, dass bereits bei der alphabetischen Verzeichnisliste zum Einsatz kommt.
Wir lesen zuerst den Inhalt des gewünschten Bildverzeichnisses in einen Array ein:

<?PHP
$path = "images";         // Bildverzeichnis
$verz = opendir($path);

$pics = array();        // Dieser Array wird die Dateinamen der Bilder enthalten
while($file = readdir($verz)){
    if($file != ".." && $file != "." && !empty($file))
        $pics[] = $file;
    }
?>

Auf die nun im Array befindlichen Elemente kann mit ihrem numerischen Index zugegriffen werden.
Um sich während der Entwicklung einen Überblick über die im Array enthaltenen Einträge zu verschaffen, bietet sich die print_r()-Funktion an:

<?PHP print_r($pics); ?>

Möchten wir nun auf das erste Element des Array zugreifen muss beachtet werden, dass der Index bei Arrays in PHP bereits bei 0 startet.
Die Ausgabe kann dann folgendermaßen erfolgen:

<?PHP
// Wurde eine Zahl per Parameter übergeben?
if(isset($_GET['showimg']) && empty($_GET['showimg']) OR !isset($_GET['showimg'])){
    $_GET['showimg'] = 0;     // Wenn nicht, starten wir mit Eintrag 0 im Array $pics
    }

$nextimg = $_GET['showimg'];
if($nextimg < (count($pics)-1)) $nextimg++;     // Wir erhöhen die Zahl um 1 (wenn die maximale Anzahl an Bildern im Verzeichnis noch nicht erreicht wurde)

// Bild ausgeben:
echo "<a href="".$_SERVER['PHP_SELF']."?showimg=".$nextimg.""><img src="".$path."/".$pics[$_GET['showimg']]."" alt="Bild" /></a>";
?>

Wie Sie sehen nutzen wir eine Zählvariable ($nextimg), die wir als GET-Parameter ($_GET['showimg']) dem Link übergeben um nach einem Klick auf das Bild das nächste Bild im Array anzuzeigen.

Der gesamte Quellcode dieses Codeschnipsel sieht so aus:

Zurück zur Übersicht

Zum Diskussionsthema
Download
Demo
Git

Dieser Beitrag ist unter der Creative Commons Namensnennung 3.0 Deutschland lizensiert.
Bearbeitung, Nutzung & Verbreitung ist ausdrücklich gestattet.