Unlink mit ID ?!

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

  • Unlink mit ID ?!

    Hi Freaks ^^

    Hab da nen Problemchen und da Google und Boardsuche mir nicht weiterhelfen, dacht ich, ich schreib mal ...

    Also ich hab da nen Uploadscript, wie viele andere auch und funktionieren tut es auch soweit, oh Wunder

    Nunja, jedenfalls werden mir nach einem upload die Dateien in der Übersicht angezeigt und sollen aber auch einzeln gelöscht werden.
    Ich hab daher ein Unlink reingebastelt, was auch zum teil funktioniert. Leider löscht mir das alle Dateien und nicht nur die eine, deren DelButton ich nutzte ?!

    Anbei mal das bisserl Code, was scheinbar sowas wie eine ID brauch ?!

    <form action=\"$PHP_SELF\" method=\"POST\"> <input type=\"submit\" name=\"button\" value=\"del\"></form></td></tr>";
    if ($button)
    {
    unlink("$ordner/$file");



    cya & thx for Reply

  • #2
    Ich hab eher den Verdacht, dass er die Datei ohne Bestätigung löscht.

    mach mal:

    if ($button) {
    echo ' Ich lese das nächstemal vor dem Posten diesen Link http://www.php-resource.de/forum/sho...threadid=50454 ';
    }

    Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
    sondern mit den Augen das Manual zu lesen.

    Kommentar


    • #3
      Original geschrieben von xManUx
      Ich hab eher den Verdacht, dass er die Datei ohne Bestätigung löscht.

      mach mal:

      if ($button) {
      echo ' Ich lese das nächstemal vor dem Posten diesen Link http://www.php-resource.de/forum/sho...threadid=50454 ';
      }
      Hi

      Jo, löscht die Dateien ohne Bestätigung, muss also kein OK oder sonstiges klicken ...

      Ich hab soviel gelesen, scheinbar nicht alles, daher bin ich auch ein Noob.
      Und daher bringt mich dein Link genausowenig weiter ?!

      Kommentar


      • #4
        Ganz einfach, du formatierst in Zukunft deinen PHP-Code so wie es im Link beschrieben steht.

        Und

        PHP-Code:
        if ($button) { echo 'ausgabe'; } 
        sollte dich doch eigentlich stupsig machen? Für IF()-Befehle verwendet man i.d.R. Operatoren. Sprich, du solltest deine IF-Abfrage mit einer Klausel versehen.

        Wie wär's z.B. mit empty() oder strlen() oder ganz einfach mit einem == 'String' ?

        Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
        sondern mit den Augen das Manual zu lesen.

        Kommentar


        • #5
          Wie wäre es mit einer Checkbox für jede Datei ? Dann kannst du all jene ankreuzen, die gelöscht werden sollen und dann auf den Button klicken.
          In deinem Löschscript fragst du dann ab welche Checkboxen gewählt wurden und löscht entsprechen nur diese Dateien.
          Mehr Infos zum Thema Checkboxen gibts hier.

          Der Link von xManUx hätte dir schon was gebracht, denn er will damit nichts anderes sagen als: Formatiere deinen Quelltext und zwar vor dem nächsten Post !!

          Gruss

          tobi
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar


          • #6
            Hi

            Achso, ups Sorry, auch wenn ich jetz nicht weiss was mit Code formatieren gemeint is ...

            Ich hab die letzte Zeit mit Perl hantiert und wollte nun ins php reinkommen, indem ich mal mit einem upload/download script anfange. Bei manchen Funktionen seh ich dann den Wald vor lauter Bäumen nicht, sorry hierfür.

            Ich versuch nunmal weiter, erstma dank für die Antworten. Wenn euch nochwas einfällt, bitte schreiben, ansonsten meld ich mich wieder ;-)


            mfg

            Kommentar


            • #7
              Mit "Code formatieren" ist unter anderem die Benutzung der Codeansicht gemeint,
              ein Bsp:

              PHP-Code:
              <form action=\"$PHP_SELF\" method=\"POST\">
              <input type=\"submit\" name=\"button\" value=\"del\"></form></td></tr>"
              ;
              if (
              $button)
              {
              unlink("$ordner/$file"); 
              Achte zudem noch darauf deinen Text umzubrechen, so daß die Leute
              die dir helfen sollen nicht auch noch seitlich scrollen müssen, das nervt nämlich.

              ZUM PROBLEM:

              Schließe mich meinem Vorredner an, würde das auch mit Checkboxen machen.
              Also erstma dein Uploadverzeichnis auslesen, also alle darin enthaltenen
              Dateinamen auslesen und in array packen.

              Dann ein Formular über das array ausgeben :

              PHP-Code:
              ...
              for(
              $i=0;$i<sizeof($files);$i++)
              {
              echo 
              "<input type=\"checkbox\" name=\"delfile[]\" value=\"".$files[$i]."\">";

              Der User kann nun die zu löschenden Dateien auswählen und das
              Formular abschicken. Dann musst du nur noch alle im array $delfile
              enthaltenen Files löschen und fertig is.

              Kommentar


              • #8
                ... in etwa so ...

                PHP-Code:
                IF ( !empty($_POST['delfile']) {
                 
                 foreach ( 
                $delfile as $var ) {
                 
                  
                unlink($ordner.'/'.$var);

                 }


                Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
                sondern mit den Augen das Manual zu lesen.

                Kommentar


                • #9
                  HI

                  Danke für die zahlreichen Tips ...

                  Versuche mich gerade an diesen Checkboxen, will aber irgendwie nicht oder ich solte vielleicht ersma paar Stunden ins Bett ^^


                  mfg

                  Kommentar


                  • #10
                    Original geschrieben von xManUx
                    ... in etwa so ...

                    PHP-Code:
                    IF ( !empty($_POST['delfile']) {
                     
                     foreach ( 
                    $delfile as $var ) {
                     
                      
                    unlink($ordner.'/'.$var);

                     }

                    Hi

                    Erste Zeile fehlt ein ")"

                    ;-)


                    mfg

                    Kommentar


                    • #11
                      Hi

                      So, hab nun den letzten tip von xManUx, sowie das mit den Checkboxen ausprobiert und es funzt nicht..checkboxen werden sogar angezeigt, bleibt aber alles irgendwie ohne funktion

                      Es gibt ja verschiedene Möglichkeiten, das umzusetzen, was ich möchte.
                      Hab da jetz soviel verschiedene Sachen probiert, entweder eure Tips oder so manches aus dem Web durch Google und hab keinen Durchblick mehr.

                      Dabei kommt mir der Gedanke, ob ich wirklich immer das haben muss was ich will ^^


                      mfg
                      Zuletzt geändert von blanix; 29.06.2005, 05:27.

                      Kommentar


                      • #12
                        Wie wärs mal mit Zeigen von Ansätze?

                        Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
                        sondern mit den Augen das Manual zu lesen.

                        Kommentar


                        • #13
                          Hi

                          Ansätze ?!

                          Naja, jedenfalls dacht ich immer, ich sei nich doof ...

                          Ich hab auf meinem xampp besagtes Upload/Download Script und bisher ging das erweitern auch gut. Habe eine upload.php, in der Formularfelder und eine Passwortabfrage drin ist, die Dateien also in Ordner X transferiert.
                          Dann hab ich die index.php in der ich die Dateien auslese und per Echo in der Ausgabe aufliste. Eigentlich dacht ich nun, diese index.php um die lösch-checkboxen zu erweitern, was bei den letzten Anpassungen aber ohne Funktion blieb. Aber es sollte, nach einigen Überlegungen, vielleicht doch auf eine separate Seite mit Zugriffsschutz liegen. Ich will ja schliesslich auch Schandtaten vorbeugen ...

                          Vielleicht ist noch zu erwähnen, das ich PHP ohne SQL nutze


                          mfg

                          Kommentar


                          • #14
                            Zeig uns doch mal deinen entsprechenden PHP-CODE mit dem Du löschen willst, sprich was du bis jetzt versucht hast !

                            Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
                            sondern mit den Augen das Manual zu lesen.

                            Kommentar


                            • #15
                              Ja, ein wenig Code wäre hilfreich!

                              Kommentar

                              Lädt...
                              X