Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Bestimmte Datei löschen

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Bestimmte Datei löschen

    Hallo Profis,
    ich habe ein Script was Dateien erstellt, dabei wird eine Datei erstellt die ich löschen möchte.
    testdatei-.datei

    Das Script liegt im Unterordner prog, die erstellte Datei liegt im Unterordner stadt,
    ich habe es mit unlink versucht aber die Datei wird nicht gelöscht.

    Meine Versuche:

    PHP-Code:
    $name="testdatei";
    $path "../stadt/";
    unlink('../stadt/'.$name.'-.*');
    unlink($path."/".$name.'-');
    unlink ('./stadt/testdatei-'); 
    Wo liegt mein Fehler?
    Besten Dank im voraus

  • #2
    PHP-Code:
    <?php
    $file 
    "test.txt";
    if (!
    unlink($file))
      {
      echo (
    "Error deleting $file");
      }
    else
      {
      echo (
    "Deleted $file");
      }
    ?>

    Kommentar


    • #3
      Hallo,
      klappt leider nicht

      PHP-Code:
       <?php
      $file 
      "testdatei-.datei";
      $path1 "../stadt/";
      if (!
      unlink($path1.$file))
        {
        echo (
      "Error deleting $file");
        }
      else
        {
        echo (
      "Deleted $file");
        }
      ?>

      Kommentar


      • #4
        könnt es sein, dass du mit falschem Pfadbezug versuchst zu löschen ...

        mach mal vor dem "Spirenzchen" ein
        PHP-Code:
        echo getcwd(); 

        Kommentar


        • #5
          klappt leider nicht
          ist leider keine aussagekräftige Fehlerbeschreibung!
          Was sagt das Error-Reporting? Es gibt ja eigentlich nur 2 Möglichkeiten:
          -Die Datei wird nicht gefunden
          -Du hast keine Rechte zum Löschen

          Kommentar


          • #6
            letzteres kann man eigentlich ausschließen, wenn das eigene PHP-Script vorher die Dateien erstellt hat - denn dann liegen die Rechte beim gleichen User ... wird wohl das klassische sein - Suche im falschen Verzeichnis

            Kommentar


            • #7
              Hallo,
              diese Meldung wird ausgegeben:
              [phpwiki]Warning: unlink(../stadt/testdatei-.datei) [function.unlink]: No such file or directory in /homepages/41/d33277451/htdocs/shopextern/testsm5/prog/ERSTELLEN patchwork.php on line 95
              Error deleting testdatei-.datei/homepages/41/d33277451/htdocs/shopextern/testsm5/prog/homepages/41/d33277451/htdocs/shopextern/testsm5/prog[/phpwiki]

              [PHPWIKI]$file = "testdatei-.datei";
              $path1 = "../stadt/";
              if (!unlink($path1.$file))
              {
              echo ("Error deleting $file");
              }
              else
              {
              echo ("Deleted $file");
              }
              echo dirname(__FILE__);
              echo "";
              echo getcwd(); [/PHPWIKI]

              Kommentar


              • #8
                tja ... dann ist dein "kurz-Pfad" halt falsch .. führe mal das echo getcwd(); aus, damit du weißt, wo du startest - dann baue nach, wie du von dort zur Datei kommst ...

                Edit .. und wo liegt die zu löschende Datei in Bezug auf das Arbeitsverzeichnis ?

                /homepages/41/d33277451/htdocs/shopextern/testsm5/prog/x <-- x da bist du

                .. führt dich zum ordner testsm5 -> liegt da der erwähnte Ordner "stadt" ?

                Kommentar


                • #9
                  Hallo,
                  das Verzeichnis stadt hat ein CHMOD von 755

                  Kann es an der dateiendung liegen?
                  testdatei- Endung: Datei also
                  testdatei-.datei

                  Kommentar


                  • #10
                    Hallo,
                    die Datei liegt im Ordner stadt von der Root
                    das Script liegt im Ordner prog von der Root

                    /homepages/41/d33277451/htdocs/shopextern/testsm5/prog/x <-- x da bist du

                    .. führt dich zum ordner testsm5 -> liegt da der erwähnte Ordner "stadt" ?
                    JA und auch der Ordner prog

                    Kommentar


                    • #11
                      nee - eben nicht .,..

                      getcwd hat dir verraten wo du bist ( die letzte Ausgabe nach den ganzen Fehlermeldungen) ...

                      um von da bis zum "root" zu kommen (htdocs?) musst du halt 3 Ebenen rauf

                      ../../../stadt/testdatei-.datei

                      und an der Endung kann es nicht liegen - unter einem Unix könntest du zwar theoretisch Dateien "verstecken" durch einen Dateinamen wie ".datei" (also nur Punkt+Endung) aber selbst dann kannst du die Datei löschen, wenn du den Namen kennst - und 755 sollte auch reichen, da löschen als Schreiboperation zählt ...(du konntest die Datei selbst ja schreiben)

                      Kommentar


                      • #12
                        Hallo,
                        das verstehe ich eben nicht, im gléichen Script erstelle ich Dateien
                        mit der Pfadangabe $path = "../stadt/"; und das funktioniert.

                        Wenn ich nun eine Datei aus Verzeichnis löschen möchte sollte es doch der selbe Pfad sein, oder irre ich mich da.

                        Auch wenn ich den Pfad wie du beschrieben hast angebe passiert nicht.

                        Es soll von Verzeichnis prog ein Verz. zurück gesprungen werden
                        also ../ dann in das Verzeichnis stadt
                        also ../stadt darin soll Datei testdatei- gelöscht werden
                        also ../stadt/testdatei-
                        demnach müsste der gesamte Link so aussehen
                        unlink('../stadt/testdatei-.*');

                        Irgendwie steh ich auf dem Schlauch

                        Kommentar


                        • #13
                          Es ist extrem verwirrend, wenn du abwechselnd von "testdatei-.datei", "testdatei-" und "testdatei-.*" sprichst.

                          Was liefert denn var_dump(realpath($path1 . $file));?

                          Kommentar


                          • #14
                            Hallo,
                            habe es selber hinbekommen, Danke

                            Kommentar

                            Lädt...
                            X