löschen per checkbox

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #16
    ich habe es so gemacht :

    $box = $_POST['box'];

    das echo vom Query ergab :

    DELETE FROM Suche WHERE id IN (1,2,3)


    edit :


    kann es sein das ich :

    $box = array($_POST['box']); schreiben muss ?

    so wäre die meldung weg

    Edit 2 :

    dann geht das löschen nicht mehr ( verzweifel )

    Last edited by launebaer; 18-03-2005, 09:25.

    Comment


    • #17
      kann es sein, dass du nicht wirklich viel Ahnung hast und ungern selbst liest/denkst?

      Laut Manual erwartet implode als zweiten Parameter ein Array.
      Wenn du also IN (1,2,3) ausgegeben bekommst, dann sollte es ja prinzipiell richtig sein, warum willst du jetzt also nochmal ein Array drumrum legen?

      Poste lieber mal deinen und markiere die Zeile, die laut Meldung fehlerhaft ist
      Ich denke, also bin ich. - Einige sind trotzdem...

      Comment


      • #18
        Ungelesen stimmt so nicht ganz , ich schau schon oft in die manuel aber verstehe es nur schwer !

        PHP Code:

        <?
                $result = mysql_query($abfrage);
                while($row = mysql_fetch_array($result))
                {
                $ID = $row['id'];
                echo "<tr>";
                echo "<td align=center>".$row["Strasse"]."</td>";
                echo "<td align=center><input type=checkbox name='box[]' value='$ID'></td>";
                echo "</tr>";
                }
        ?>
        hoffe mal das ist das was ich posten sollte !

        und die Fehlerzeile :

        PHP Code:

        $updatedel 
        "DELETE FROM Suche WHERE id IN (".implode(',',$box).")"
        $box = $_POST['box'];

        Comment


        • #19
          Meinte eigentlich alles (ausnahmsweise)

          Und ändere vorher
          PHP Code:
          $updatedel "DELETE FROM Suche WHERE id IN (".implode(',',$box).")"
          in
          PHP Code:
          echo '$box ist vom Typ: '.gettype($box).'<br />';
          $updatedel "DELETE FROM Suche WHERE id IN (".implode(',',$box).")"
          Ausgabe?
          Ich denke, also bin ich. - Einige sind trotzdem...

          Comment


          • #20
            gesamte Datei :

            PHP Code:

            <?
            require("connect.inc.php");
            $abfrage = "SELECT * FROM Suche";
            ?>

            <form method="post" action="">
            <table width="600" border="1" align="center">
            <tr>
            <td align="center">Strasse</td>
            <td align="center">Check</td>
            </tr>
            <?
                    $result = mysql_query($abfrage);
                    while($row = mysql_fetch_array($result))
                    {
                    $ID = $row['id'];
                    echo "<tr>";
                    echo "<td align=center>".$row["Strasse"]."</td>";
                    echo "<td align=center><input type=checkbox name='box[]' value='$ID'></td>";
                    echo "</tr>";
                    }
            ?>

            <tr>
            <td align=center colspan=5><input type="submit" name="Delete" Value="löschen"></td>
            </tr>
            </form>

            <?
            $box = $_POST['box'];
            echo '$box ist vom Typ: '.gettype($box).'<br />';
            $updatedel = "DELETE FROM Suche WHERE id IN (".implode(',',$box).")";


            if (isset($_POST['Delete']))
            {
            $update = mysql_query($updatedel);
            }
            echo $updatedel;
            ?>
            </table>
            ohne häckchen in den Feldern : $box ist vom Typ: NULL
            mit häckchen in den Feldern : $box ist vom Typ: array

            Comment


            • #21
              Original geschrieben von launebaer
              ohne häckchen in den Feldern : $box ist vom Typ: NULL
              mit häckchen in den Feldern : $box ist vom Typ: array
              Das es relativ sinnfrei ist, die Datensätze zu löschen, die du im Formular ausgewählt hast, wenn du das Formular nicht abschickst, ist dir klar?

              Weiter unten prüfst du doch, ob du das Formular abgesendet hast, pack die drei Zeilen obendrüber auch in das if.
              Und auch schön prüfen, ob $_POST['box'] vorhanden ist...

              Und stell doch bitte mal dein error_reporting auf E_ALL.
              Dann kommst du auch schneller auf sowas. Hoffe ich.

              Warum verwendest du eigentlich $box und nicht direkt $_POST['box']?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Comment


              • #22
                stimmt ich könnte es gleich so machen ,

                aber irgentwie komm ich net weiter . werd mal sehen ob ich irgentwo beispiele finde !

                Danke Dir aber auf jeden Fall für deine Hilfe auch wenn ich schwer von Begriff bin !


                Mfg launebaer

                Comment


                • #23
                  PHP Code:
                  #$box = $_POST['box']; -> steck das in den SAND!

                  echo '$box ist vom Typ: '.gettype($box).'<br />';
                  $updatedel "DELETE FROM Suche WHERE id IN (".implode(',',$_POST['box']).")";
                  echo 
                  $udatedel

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

                  Comment

                  Working...
                  X