brainsucker
Erfahrenes Mitglied
Guten Abend zusammen,
ich häng hier schon ne ganze weile an einem Problem welches ich irgendwie nicht gelöst bekomme.
Folgende Ausgangslage:
Verzeichnisstruktur:
upload/untervz1/untervz2/untervz3/untervz4
Ich wollte mir ein script schreiben welches prüft ob das letzte verzeichnis(in diesem Fall: untervz4) leer ist. Ist es leer so kann es gelöscht werden.
Danach wird untervz3 geprüft, wenn auch dieses leer ist kann es ebenfalls gelöscht werden. das ganze soll soweit zurückgehen dass nur noch das uploadverzeichnis übrig bliebe. Dieses darf nicht gelöscht werden.
Mein bisheriger Ansatz:
Beim erstens chritt klappt es auch. Im zweiten schritt funktionierts dann nicht mehr. weil er behauptet dort noch das zuvor gelöschte untervz4 zu finden. (Habe mir einfach $f einfach ausgeben lassen, und da tauchte das dann auf)
Ich hab die einzelnen Teilschritte mal in separate Dateien und dann nacheinander ausgeführt, da funktionierts dann.
Wäre halt nur schöner wenn man das in einem rutsch machen könnte. Hoffe ihr versteht mein Problem und könnt mir helfen
ich häng hier schon ne ganze weile an einem Problem welches ich irgendwie nicht gelöst bekomme.
Folgende Ausgangslage:
Verzeichnisstruktur:
upload/untervz1/untervz2/untervz3/untervz4
Ich wollte mir ein script schreiben welches prüft ob das letzte verzeichnis(in diesem Fall: untervz4) leer ist. Ist es leer so kann es gelöscht werden.
Danach wird untervz3 geprüft, wenn auch dieses leer ist kann es ebenfalls gelöscht werden. das ganze soll soweit zurückgehen dass nur noch das uploadverzeichnis übrig bliebe. Dieses darf nicht gelöscht werden.
Mein bisheriger Ansatz:
PHP:
$countfiles=0;
$handle = "upload/".$untervz1."/".$untervz2."/".$untervz3."/".$untervz4."/";
if(is_dir($handle))
{
$verz = opendir ($handle);
while($f = readdir($verz)){ $countfiles++;}
$countfiles = $countfiles-2;
if($countfiles == 0){rmdir($handle);}
}
$countfiles2=0;
$handle2 = "upload/".$untervz1."/".$untervz2."/".$untervz3."/";
if(is_dir($handle2))
{
$verz2 = opendir ($handle2);
while($f = readdir($verz2)){echo $f."<br>"; $countfiles2++;}
$countfiles2 = $countfiles2-2;
if($countfiles2 == 0){echo "loesche";rmdir($handle2);}
}
// bis eben upload erreicht ist
Beim erstens chritt klappt es auch. Im zweiten schritt funktionierts dann nicht mehr. weil er behauptet dort noch das zuvor gelöschte untervz4 zu finden. (Habe mir einfach $f einfach ausgeben lassen, und da tauchte das dann auf)
Ich hab die einzelnen Teilschritte mal in separate Dateien und dann nacheinander ausgeführt, da funktionierts dann.
Wäre halt nur schöner wenn man das in einem rutsch machen könnte. Hoffe ihr versteht mein Problem und könnt mir helfen