Homepage selbermachen 7.851 Themen, 35.616 Beiträge

PHP-Problem mit is_dir()

Rheinlaender / 6 Antworten / Flachansicht Nickles

Tach zusammen.

Ich habe ein kleines Problem mit einem PHP-Skript. Dieses liest alle Dateien (Bilder) in einem Ordner in ein Array ein und stellt die dazugehörigen Thumbnails, die sich in einem Unterordner befinden, auf einer Übersichtsseite dar. Alles funktioniert wunderbar, außer, dass eben der Unterordner auch als Dateiname einglesen wird und ein nicht vorhandenes Thumbnail dargestellt werden soll. So sieht der Codeschnipsel aus, der das eigentlich verhindern soll:


$namen = array();
while ($file = readdir ($handle)) {
if($file != "." && $file != "..") {
if(!is_dir ($file)) {
$zahl++;
$namen[$zahl] = $file;
}
}
}

Mit if(is_file ($file)) werden auch die Bilddateien nicht angezeigt. Kann mich bitte jemand mit der Nase auf den Fehler stoßen?

Gruß
Rheinlaender
bei Antwort benachrichtigen
xafford Rheinlaender „PHP-Problem mit is_dir()“
Optionen

Tja, der Fehler ist ganz einfach: Du fragst PHP, ob $file ein Verzeichnis ist und wenn es das nicht ist, dann speicherst Du $file. Allerdings erwartet PHP, dass Du is_dir einen absoluten Pfad zum potentiellen Ordner übergibst und nicht nur den Namen (es würde funktionieren, wenn Du in dem Verzeichnis operieren würdest, in dem auch das Script liegt). $file enthält aber nur den Namen der Datei / des Verzeichnisses, nicht jedoch den Pfad.

Pauschalurteile sind immer falsch!!!
bei Antwort benachrichtigen