Jochen: Script liest Verzeichnis falsch aus

Beitrag lesen

Hi,

mit folgendem Script will ich meine Fotoalben für meine HP erstellen:

<?php

$bilderverzeichnis = opendir("ordner");

while($dateiname = readdir($bilderverzeichnis)){
if(eregi(".(jpg|gif|png)$",$dateiname)){
echo "            <div class="bild_mit_unterschrift">\n";
echo "            <p class="unterschrift_unter_bild"><a href="ordner/$dateiname" rel="lyteshow[album]" title="Albumname">";
echo "<img class="keinbilderrahmen" src="ordner/kl/$dateiname" alt=""/>";
echo "</a><br/>$dateiname</p>\n";
echo "            </div>\n\n";
}
}

closedir($bilderverzeichnis);

?>

Das Script soll das angegebene Verzeichnis auslesen und bei jedem Durchgang das "Thumbnail" des aktuell ausgelesenen Dateinamens (das im gleichen Ordner im Unterordner "kl" mit gleichem Namen steckt) darstellen und die große Ausgabe verlinken.

Das Script funktioniert auch soweit, nur werden die Bilder nicht "alphabetisch" oder "der Reihe nach" ausgelesen, sondern wild durcheinander.

Konkretes Beispiel:

Die Bilder liegen im Ordner folgendermaßen vor:

100_0001.jpg
100_0002.jpg
100_0003.jpg
:
:
100_0200.jpg

Das Ergebnis, wenn ich meine Bildergalerie mit diesem Script generieren lasse, sieht in der Reihenfolge so aus:

<div class="bild_mit_unterschrift">
<p class="unterschrift_unter_bild"><a href="ordner/100_0047.jpg" rel="lyteshow[album]" title="Albumname"><img class="keinbilderrahmen" src="ordner/kl/100_0047.jpg" alt=""/></a><br/>100_0047.jpg</p>
</div>

Ohne den generierten Code:

100_0047.jpg
100_0100.jpg
100_0001.jpg
100_0046.jpg
100_0101.jpg
100_0002.jpg
100_0048.jpg
100_0102.jpg
100_0003.jpg
:
:

Wie kann das denn möglich sein?
Das Script liest doch nur jedes Element des Ordners aus - warum fängt es dann nicht "alphabetisch" mit der kleinsten Zahl an?

LG

Jochen