Array-Daten als SELECT-Abfrage an MySQL

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

  • Array-Daten als SELECT-Abfrage an MySQL

    Hallo!
    Ich habe eine Benutzerübersicht, die mir alle in einer SQL-Datenbank angelegten Benutzer anzeigt. Am Ende jeder Zeile ist eine Checkbox, über die man in der Datenbank zu löschende Benutzer auswählen kann:
    -------------------------------------------------
    <form action="loeschen.php" method="post" name="nutzer" id="nutzer">
    <?php
    connect();
    $sql = "SELECT `Name`, `Vorname`, `UserName`, `UserMail` FROM benutzer ORDER BY Name";
    $result = mysql_query($sql);
    $felder = mysql_num_fields($result);
    $datensaetze = mysql_num_rows($result);

    ?>
    <table width="200" border="0">
    <tr>
    <td><p>
    <?php
    echo "<p>Es sind <b>$datensaetze</b> Benutzer vorhanden</p>\n";
    echo "<table border='1' cellspacing='0'>\n"; // Tabelle beginnen
    echo "<tr>"; // Zeile erzeugen
    for ($i = 0;$i < $felder;$i++) {
    $feldname = mysql_field_name($result, $i);
    echo "<th>$feldname</th>";

    }
    echo "<td>Löschen?</td>";
    echo "</tr>\n"; // Zeile schließen

    while ($row = mysql_fetch_assoc($result)) {
    echo "<tr>"; // Zeile erzeugen
    foreach ($row as $key => $value) {
    echo "<td>$value </td>";
    }
    echo "<td><input name=\"del[]\" type=\"checkbox\" value=\"$row[UserName]\" multiple></td>";
    echo "</tr>\n"; // Zeile schließen
    }
    echo "</table>\n"; // Tabelle schließen
    ?>
    </p>
    <p>
    <input name="löschen" type="submit" id="löschen" value="Löschen">
    <input name="reset" type="reset" id="reset" value="Häckchen löschen">
    </p></td>
    </tr>
    </table>
    </form>
    -----------------------------------------------------------------------------
    Selbstverständlich wird zunächst eine sessionhelpers.inc.php eingebunden, über die auf die Datenbank zugegriffen wird.

    Mein Problem:

    In der loeschen.php, an die die checkbox-daten übergeben werden, sollen nun die Werte der Checkbox ($_POST[del]) genzutz werden, um eine SELECT-Abfrage an MYSQL zu schicken.
    Wenn ich

    foreach($_POST[del] as $key => $value){
    echo "Select `Name`, `Vorname` FROM `benutzer` WHERE `UserID` = $value;<br>";
    }

    starte, wird aber immer nur der letzte Wert des $_POST[del]-arrays an in die Select-Abfrage eingetragen.

    Wie bekomme ich für jeden Wert des Arrays eine Select-Abfrage hin???????
    Ist wahrscheinlich ganz einfach! Sehe aber gerade den Wald vor lauter Bäumen nicht!
    Vielen Dank!

  • #2
    mit einer Forschleife wie du es schon machst, du etwas anders:
    PHP-Code:
    $sql"Select `Name`, `Vorname` FROM `benutzer` WHERE `UserID'= ";
    foreach(
    $_POST[del] as $key => $value){
    $sql.=$value."OR UserID = " 

    und das du mit echo keinen Query abschickst ist ja klar, oder?
    Zumal willst du doch löschen, wieso also die Select abfrage

    mfg

    Kommentar


    • #3
      Re: Array-Daten als SELECT-Abfrage an MySQL

      Bitte Regeln lesen, und Code vernünftig und lesbar posten.


      Und dass du bei Checkboxen nur für die jeweils angekreuzten Werte übermittelt bekommst, ist dir bewusst?
      Ausserdem hat Input kein Attribut multiple.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        1. du hast nicht UserId in den Checkboxes eingetragen, sondern Name
        2. bitte $_POST['del'] nehmen
        3. schon mal print_r($_POST['del']); gemacht und angeschaut?

        Kommentar

        Lädt...
        X