Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Mehrere Zeilen mit PDO und Checkboxen mit vorbereiteten Anweisungen löschen?

Sie weisen denselben name="deletetask" zu für jedes Kontrollkästchen. Wenn Sie also Ihr Formular absenden, erhalten Sie nur die zuletzt ausgewählte deletetask Wert. Ihr Fehler liegt also hier

<input class="checkbox" name="deletetask" value=

Sollte

sein
<input class="checkbox" name="deletetask[]" value=

Sie müssen also deletetask umbenennen zu deletetask[] Ihre Checkboxen werden also als Array gesendet und dann tun Sie so etwas wie

$todelete = $_POST['deletetask']; 
//or $_GET, if you are submitting form through get. But I would recommend you using POST
$stmt = $pdo->prepare("DELETE FROM table WHERE id = ?");
foreach ($todelete as $id)
    $stmt->execute($id);