Alle Dateien im Verzeichnis löschen - ausgenommen sich selbst

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

  • Alle Dateien im Verzeichnis löschen - ausgenommen sich selbst

    Hallo

    Ich habe da einen Code der beim Aufruf alle Dateien im Verzeichnis löscht in welchem sie liegt. Es löscht sich sogar selber. Könnte mir jemand helfen wie man das umschreiben kann, damit sich die Datei delete_this_folder.php diese nicht mitlöscht?
    Bin auf euer Feedback gespannt und hier nun noch der Code:
    PHP-Code:
    <?php
    $folder 
    ".";
    if(
    $dir=opendir($folder))
    {
            while(
    $file=readdir($dir))
            {
                    if(!
    is_dir($folder."/".$file) && $file != "." && $file != "..")
                    {
                            if(
    unlink($file))
       {
       echo 
    "$file wurde erfolgreich gel&ouml;scht. <br />";
       }
                    }
            }
    closedir($dir);
    }
    ?>

  • #2
    PHP-Code:
    $filter ".";

    foreach(
    glob($filter) as $deliquent)
      if(
    basename($deliquent)===basename(__FILE__)) continue;
      else 
    unlink($deliquent); 
    *ungetestet*
    Wir werden alle sterben

    Kommentar


    • #3
      Besten Dank für den Tipp. Nun bin ich aber zu blöde um zu wissen wie und wo ich den Code einbauen soll, damit ich es testen kann.

      Kommentar


      • #4
        Wenn du den alten verwenden konntest, dann auch diesen.
        Wir werden alle sterben

        Kommentar


        • #5
          Nun ja, leider hat keine meiner Versuche funktioniert. Die Datei wird immer mitgelöscht oder es passiert gar nichts.

          Kommentar


          • #6
            Wie sieht dein aktueller Versuch aus?

            Falls du PHP nicht lernen willst, verschiebe ich dich gerne nach Projekthilfe.

            Kommentar


            • #7
              Das sieht nun so aus, dass ich die Datei in ein anderes Verzeichnis gespeichert habe und nun mit dem Code den Inhalt eines definierten Verzeichnis lösche.
              Hier der Code
              PHP-Code:
              <?PHP 
                $strDir 
              './uploads/'
                
              $arFiles scandir $strDir ); 
                foreach ( 
              $arFiles as $strFile 
                { 
                  if ( 
              $strFile != '.' && $strFile != '..' 
                       
              && ! is_link $strDir $strFile 
                       && 
              is_file $strDir $strFile ) ) 
                  { 
                    if ( @ 
              unlink $strDir $strFile ) ) 
                    { 
                      print 
              'Gelöscht: ' $strDir $strFile '<br />' "\n"
                    } 
                    else 
                    { 
                      print 
              'Fehlschlag: ' $strDir $strFile '<br />' "\n"
                    } 
                  } 
                } 
              ?>
              Sorry aber manchmal eilt es eben und dann möchte man nicht erst lernen sondern hofft auf schnelle Hilfe.
              Danke trotzdem.

              Kommentar


              • #8
                Schon. Dennoch würde ich gerade bei Löschoperationen nicht irgend einen x-beliebigen Code aus irgendeinem Forum kopieren.

                Kommentar

                Lädt...
                X