Warning: opendir(./ordner/): failed to open dir: Invalid argument in ..

D-LuX

Erfahrenes Mitglied
Halloooooo..

ich habe mal eine total blöde Frage:

Wieso bekomme ich folgende Fehlermeldung?
ich habe dieses Script 1:1 von meiner anderen Domain kopiert und dieses auf die Subdomain gelegt.
Dort funktioniert es einwandfrei!!

Wieso zeigt er mir die Bilder nicht an und gibt die Fehlermeldung aus?

Warning: opendir(./ordner/): failed to open dir: Invalid argument in G:\ordner\url\subdomains\firma\httpdocs\datei.php

PHP:
$bilder=array();
$pfad="./ordner/";
if ($handle = opendir($pfad)) {
    while (false !== ($file = readdir($handle))) {
        if ($file != "." && $file != "..") {
        $max++;     
        }
    }
    closedir($handle);
}
 
Zuletzt bearbeitet:
Hört sich für mich eher nach einem Schreibfehler an, als nach einem PHP Fehler.

Existiert der Ordner wirklich?
Sind auf deiner Subdomain vielleicht andere Rechte eingestellt?
 
der Ordner existiert definitiv ..aber was die Rechte angeht bin ich mir nicht sicher!

Wie gesagt, ist alles 1:1 ..wie kann ich denn die Rechte ändern, bzw. sehen welche Rechte verwendet werden?
 
Vielleicht kommt die Funktion mit dem './ordner/' nicht zurecht. Wenn der Ordner in der Hierarchie eins vorher ist, brauchst du 2 Punkte, also '../ordner/', und wenn er in der Hierarchie genauso ist wie dein Script dann reicht 'ordner/'.

Blöde Idee, aber vielleicht ist das wirklich das Problem.
 
Diese spezielle Fehlermeldung wird eigentlich nur von opendir geworfen, wenn der Pfad ungültige Zeichen / invalide Inputs beinhaltet.
Eine absolute Pfadangabe wäre vielleicht hilfreich, aber höchstwahrscheinlich nicht für die Problemlösung relevant... Oder dich? :rolleyes:
Gib bitte einfach mal den absoluten, systeminternen Pfad an und probier es nochmal.
 
Probier es doch mal mit dem absoluten Pfad und prüfe, ob über den Pfad tatsächlich ein Verzeichnis erreicht wird:
PHP:
$pfad = abspath("./galerie/");
if( !is_dir($path) ) {
	echo 'Verzeichnis "'.$pfad.'" existiert nicht!';
}


Korrektur: Du hast natürlich recht, Timmy. Die gemeinte Funktion heißt realpath() und nicht abspath().
 
Wenn ich den Groß- und Lehrmeister korrigiere, wirkt das wie Klugsch**ßerei, aber die entsprechende PHP-Funktion schimpft sich [phpf]realpath[/phpf] und nicht abspath :)
 
Probier es doch mal mit dem absoluten Pfad und prüfe, ob über den Pfad tatsächlich ein Verzeichnis erreicht wird:
PHP:
$pfad = abspath("./galerie/");
if( !is_dir($path) ) {
	echo 'Verzeichnis "'.$pfad.'" existiert nicht!';
}


Korrektur: Du hast natürlich recht, Timmy. Die gemeinte Funktion heißt realpath() und nicht abspath().

ich habe folgendes getestet:
PHP:
$pfad = realpath("./galerie/");
if( !is_dir($path) ) {
    echo 'Verzeichnis "'.$pfad.'" existiert nicht!';
}

und echo gibt aus: Verzeichnis "" existiert nicht!

Klar würd man jetzt denken, du idiot, es gibt das Verzeichnis nicht ;)

Aaaaaaaaaber, es ist vorhanden ...und nun? ;)
 
Zuletzt bearbeitet:
Dann stimmt aber die Pfadangabe ausgehend vom der aktuell ausgeführten Skript-Datei nicht. Zeig doch mal die betreffende Verzeichnisstruktur.
 
Zurück