Hallo zusammen,
ich sitze gerade daran, eine Bildergalerie zu erstellen. Leider funktioniert das Ganze nicht so, wie ich mir das vorgestellt habe.
Genauer gesagt bin ich noch beim ersten Schritt. Nämlich dem, wo das Verzeichnis ausgelesen wird und anschließend in einem Array gespeichert wird.
Der Code sieht aktuell so aus:
<html>
<head>
<title>Bildergalerie</title>
</head>
<body>
<?php
$verzeichnis = 'bilder';
if (is_dir($verzeichnis)) {
if ( $handle = opendir($verzeichnis) ) {
echo '<ul>';
while ( ($file = readdir($handle)) !== false ) {
echo '<li>filename: ' . $file . '</li>';
echo '<li>filetype: ' . filetype($file) . '</li>';
echo "<hr>\n";
if ( filetype($file) == 'file' && substr($file, -4) == '.jpg' ) {
$bilder[] = $file;
}
}
echo '</ul>';
closedir($handle);
}
}
echo '<pre>';
print_r($bilder);
echo '</pre>';
?>
</body>
</html>
Alles anzeigen
Folgende Probleme gibt es:
1. Das Verzeichnis bzw. die einzelnen Dateien/Bilder des Verzeichnisses sollen ja ausgegeben werden. Das passiert eigentlich auch, aber die ersten zwei Schleifendurchläufe spuckt PHP zwei Verzeichnissen aus. Das eine mit dem Namen '.' und das andere mit '..', obwohl diese gar nicht existieren.
2. Der Filename der Bilder wird richtig ausgegeben, jedoch der Filetype nicht. Da bekomme ich nämlich immer folgende Fehlermeldung:
Warning: filetype(): Lstat failed for 10-3-nordirland-magheracross.jpg in C:\xampp\htdocs\php\Projekte\Bildergalerie\bildergalerie.php on line 22
Beim Filetype steht dann einfach gar nichts. Dazu muss man sagen, dass der mit der selben Fehlermeldung natürlich auch in Zeile 25 meckert, weil ich dort wiederum auf den Filetype zugreife.
Aus irgendeinem Grund kann der den Filetype also nicht bestimmen o.ä.
3. Ich kann auf den Array $bilder außerhalb der while-Schleife nicht zugreifen bzw. er kennt sie nicht. Dementsprechend die Notiz:
Notice: Undefined variable: bilder in C:\xampp\htdocs\php\Projekte\Bildergalerie\bildergalerie.php on line 42
Ich hoffe, jemand kann mir helfen. Das Ganze bezieht sich, wie ihr vielleicht schon gemerkt habt, auf diese Aufgabe: http://www.php-kurs.com/beispiel-bildergalerie-erstellen.htm
Vielen Dank schon mal!
Gruß
JR Cologne