Ankündigung

Einklappen
Keine Ankündigung bisher.

rmdir ("");

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • flual2000
    hat ein Thema erstellt rmdir ("");.

    rmdir ("");

    Ich will ein Verzeichnis mit Inhalt aus dem Server löschen. Dazu habe ich diesen Befehl verwendet:

    rmdir ("$ordner");

    Das Verzeichnis existiert aber noch. Die Zugriffsrechte des Verzeichnisses sind 755.
    Wo ist der fehler?

  • sysop
    antwortet
    scheinbar kannst/willst du das nicht verstehen.

    1.
    wenn du nicht der besitzer bist, wird auch nicht gechmodded, da könnte sonst jeder kommen und chmodden, wie er will. ein chmod($ordner,0777); kann gut gehen, sollte dem nicht so sein, bist du nicht besitzer und KANNST NICHT löschen. abgesehen davon ist mkdir ein befehl zu ERSTELLEN von verzeichnissen.

    nach deinem chmod könntest du dir mit:
    echo substr(sprintf('%o', fileperms($ordner)), -4); das chmod ergebnis anzeigen lassen, steht da nicht 777 hat es nicht geklappt.

    2.
    dein verzeichnis wird nicht gelöscht, solange noch etwas IM verzeichnis steht, dafür war der link zur rekursiv funktion.

    Einen Kommentar schreiben:


  • flual2000
    antwortet
    muss ich als zusätzlich zu
    mkdir

    chmod 777;

    eingeben?

    Einen Kommentar schreiben:


  • c01001
    antwortet
    Also wenn du ordner löschen willst, wie ich es gelesen habe, dann probiere das aus.
    Code:
    rm -r $ordner
    // Löscht Ordner samt Dateien und Unterverzeichnissen.
    
    rmdir $ordner
    //Löscht Ordner, wenn es leer ist.
    P.S.
    Code:
    chmod 777
    MFG c01001.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von flual2000
    Wie kann man besitzer eines Verzeichnisses werden?
    Im Prinzip ja. Bisher bin ich der einzige der diese Funktionen austestet.
    Der Besitzer kann Dateien/Verzeichnissse oft verschenken (manchmal kann es nur root).
    Der Webserver läuft vermutlich für alle PHP Skripte mit dem selben Benutzer -> Dateien/Verzeichnisse, die darüber angelegt werden gehören alle diesem Benutzer.

    Also erstmal vergessen und das erste Problem mit phpfans link lösen.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von flual2000
    Also, bei rmdir muss das Verzeichnis leer sein. Ist es aber nicht, gibt es dafür eine andere Methode?
    Rekursiv löschen, siehe http://www.phptt.de/showschnipsel.php?kat=15&id=30

    Gruß
    phpfan

    Einen Kommentar schreiben:


  • flual2000
    antwortet
    Wie kann man besitzer eines Verzeichnisses werden?
    Im Prinzip ja. Bisher bin ich der einzige der diese Funktionen austestet.

    Einen Kommentar schreiben:


  • flual2000
    antwortet
    Also, bei rmdir muss das Verzeichnis leer sein. Ist es aber nicht, gibt es dafür eine andere Methode?

    Warum werden bei mkdir nicht die Zugriffsrechte vergeben, die ich angegeben habe?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von Fips
    Des weiteren darf der Ordner dann nicht leer sein.
    Andersherum. Das Verzeichnis muss leer sein.

    Zitat von flual2000
    ich habe mit

    mkdir($ordner, 0777);

    die Zugriffsrechte auf 0777 gesetzt, aber im Server steht 0755. Wie kann das gehen?
    http://de3.php.net/manual/en/function.umask.php beachten.
    Die erste 7 bezieht sich auf den Besitzer, der hat Vollzugriff und kann daher das Verzeichnis auch löschen. Ist das Skript mit dem rmdir drin Besitzer des Verzeichnisses?

    Einen Kommentar schreiben:


  • flual2000
    antwortet
    ich habe mit

    mkdir($ordner, 0777);

    die Zugriffsrechte auf 0777 gesetzt, aber im Server steht 0755. Wie kann das gehen?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Du hast keine Schreibrechte nur Leserechte gesetzt , 0777 wären die vollen Zugriffsrechte für diesen Ordner.

    Des weiteren darf der Ordner dann nicht leer sein.

    Einen Kommentar schreiben:

Lädt...
X