Ankündigung

Einklappen
Keine Ankündigung bisher.

rmdir ("");

Einklappen

Neue Werbung 2019

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

  • 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?

  • #2
    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.

    Kommentar


    • #3
      ich habe mit

      mkdir($ordner, 0777);

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

      Kommentar


      • #4
        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?

        Kommentar


        • #5
          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?

          Kommentar


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

            Kommentar


            • #7
              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

              Kommentar


              • #8
                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.

                Kommentar


                • #9
                  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.
                  Ob eine Sache gelingt, erfährst du nicht, wenn du darüber nachdenkst, sondern wenn du es ausprobierst.

                  Kommentar


                  • #10
                    muss ich als zusätzlich zu
                    mkdir

                    chmod 777;

                    eingeben?

                    Kommentar


                    • #11
                      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.
                      gruss sys

                      Kommentar

                      Lädt...
                      X