Überprüfen, ob ein Verzeichnis existiert
Freakie
- php
0 Henryk Plötz0 Freakie0 André Laugks0 Freakie
0 André Laugks
0 TomCat0 TomCat
Hi.
Wie kann man überprüfen, ob ein bestimmtes Verzeichnis schon existiert oder noch angelegt werden muss?
Es wäre nett, wenn mir jemand helfen könnte.
Danke.
Moin,
Wie kann man überprüfen, ob ein bestimmtes Verzeichnis schon existiert oder noch angelegt werden muss?
Es wäre nett, wenn mir jemand helfen könnte.
Die PHP-Doku ist dein Freund: http://www.php.net/manual/de/function.is-dir.php.
BTW: Ist was mit dem Forum kaputt? Der meint meine Mailadresse henryk@ploetzli.ch "scheint nicht korrekt zu sein."
--
Henryk Plötz
Grüße aus Berlin
Danke. Jetzt läuft's.
Stoße in mienem super-verbuggten Skript allerdings schon auf ein neues Problem:
<code>
.. $i=0;
.. $votenr=5;
.. while ($i < $votenr)
.. {
68: fopen("vote$i.dat", "r");
69: $votingid[$i] = fgets("vote$i.dat", 255);
70: fclose("vote$i.dat");
71: echo "$votingid[$i]<BR>";
72: $i++;
73: }
</code>
Fehlermeldung beim Ausführen:
Warning: Supplied argument is not a valid File-Handle resource in /home/freaknfantasy/poll/poll.php on line 69
Warning: Supplied argument is not a valid File-Handle resource in /home/freaknfantasy/poll/poll.php on line 70
Woran kann das liegen?
Hallo!
68: fopen("vote$i.dat", "r");
69: $votingid[$i] = fgets("vote$i.dat", 255);
70: fclose("vote$i.dat");
Warning: Supplied argument is not a valid File-Handle resource in /home/freaknfantasy/poll/poll.php on line 69
Warning: Supplied argument is not a valid File-Handle resource in /home/freaknfantasy/poll/poll.php on line 70
So sollte es funktionieren:
$fh = fopen("vote$i.dat", "r");
$votingid[$i] = fgets($fh, 255);
fclose($fh);
MfG, André Laugks
Hallo!
68: fopen("vote$i.dat", "r");
69: $votingid[$i] = fgets("vote$i.dat", 255);
70: fclose("vote$i.dat");
Warning: Supplied argument is not a valid File-Handle resource in /home/freaknfantasy/poll/poll.php on line 69
Warning: Supplied argument is not a valid File-Handle resource in /home/freaknfantasy/poll/poll.php on line 70
So sollte es funktionieren:
$fh = fopen("vote$i.dat", "r");
$votingid[$i] = fgets($fh, 255);
fclose($fh);
MfG, André Laugks
-_-°
^^ Immerhin läuft's jetzt ^^
Hallo!
Die PHP-Doku ist dein Freund: http://www.php.net/manual/de/function.is-dir.php.
Ich habe letztens bemerkt, daß ein file_exists() auch funktioniert.
$dir = "/pfad/zum/verzeichnis/" . $datei;
if(file_exists($dir))
{
}
Wenn Datei keinen Inhalt hatte, bekam ich trotzdem ein true.
Hast Du eine Erklärung dafür?
MfG, André Laugks
Moin,
Ich habe letztens bemerkt, daß ein file_exists() auch funktioniert.
Nein, nicht dafür. file_exists() prüft (wie der Name schon sagt) ob die angegebene Datei existiert. Der OP wollte aber wissen ob die Datei existiert _und_ ein Verzeichnis ist.
Wenn Datei keinen Inhalt hatte, bekam ich trotzdem ein true.
Hast Du eine Erklärung dafür?
Naja, auch wenn sie keinen Inhalt hat, so existiert sie doch immerhin, gell?
--
Henryk Plötz
Grüße aus Berlin
Hallo!
Nein, nicht dafür. file_exists() prüft (wie der Name schon sagt) ob die angegebene Datei existiert. Der OP wollte aber wissen ob die Datei existiert _und_ ein Verzeichnis ist.
Ja klar, daß habe ich schon verstanden.
Wenn Datei keinen Inhalt hatte, bekam ich trotzdem ein true.
Hast Du eine Erklärung dafür?
Naja, auch wenn sie keinen Inhalt hat, so existiert sie doch immerhin, gell?
Upps, ich meinte natürlich nicht die Datei hat kein Inhalt, sondern die Variable $datei.
$datei wurde nicht übergeben bzw. die Variable ist leer oder Leerstring.
$pfad = "/pfad/zum/verzeichnis/" . $datei; // --> /pfad/zum/verzeichnis/
if(file_exists($pfad))
{
}
So bekomme ich auch ein TRUE geliefert.
MfG, André Laugks
Hi,
bei mir funktioniert es z.B. so:
$sDir="verzeichnis";
if (file_exists($Dir)) {
// Tu was mit diesem Verzeichnis
}
else {
// Erzeuge das Verzeichnis erstmal
mkdir($sDir);
}
// Weiß nicht genau, aber in Befehlsbeschreibung von
// file_exist & Co. steht, man soll es machen
clearstatcache();
Ich bekomme keine Warnings, arbeite mit PHP4.
Gruß
TomCat
PS: Vielleicht hilft Dir dies:
Ich habe in dem Verzeichnis, in dem die Unterverzeichnisse sind immer ein Dummy-Verzeichnis, also eins, daß gar nicht für die Anwendung ist und auch immer überlesen wird. In jedes Unterverzeichnis lege ich immer noch eine Dummy-Datei.
Ich mache das, damit opendir und Konsorten nicht mit errors auf die Nase fallen, was mir dann den Seitenaufbau wegen der Fehlermeldungen kaputt macht.
Gruß
TomCat