Löschen von mehreren Einträgen aus einer DB-Tabelle

Mit den Checkboxen mehrere Einträge auswählen um diese dann von der DB-Tabelle zu löschen — Hier ein Beispiel mit PDO.

[Bildschirmfoto] 
Löschen von mehreren Einträgen aus einer DB-Tabelle

QuelltextKopierenAusblendenZeilen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php
// Löschen von mehreren Einträgen aus einer Datenbank

// Verbindung zur Datenbank
$db = new PDO('mysql:host=localhost;dbname=test;charset=utf8''root''');
$output '';

// Löschen
if (isset($_POST["id"])) {
 
$params $_POST["id"];
 
$placeholder implode(','array_fill(0count($params), '?'));

 
$stmt $db->prepare("DELETE FROM fruits WHERE id IN (" $placeholder ")");
 if (
$stmt->execute($params)) {
  
$output '<p>Die Daten wurden gelöscht.</p>';
 }
}

// Ausgabe
$stmt $db->query("SELECT id, fruit FROM fruits");
$results $stmt->fetchAll();

foreach (
$results as $result) {
 
$output .= '<label><input type="checkbox" name="id[]" value="' $result["id"] . '"> ' .
  
$result["fruit"] . '</label><br>';
}
?>

<!DOCTYPE html>
<html lang="de">
 <head>
  <meta charset="UTF-8">
  <title>Löschen</title>
 </head>
<body>

<h3>Löschen</h3>

<form method="post">

 <?=$output;?>

 <input type="submit">
</form>

</body>
</html>

Siehe auch: Checkbox (Mehrfachauswahl) und DB-Ausgabe

Tipps

Mit PHP zeichnen - Eine Grafik mit PHP erstellen
Mit den Grafikfunktionen können Sie zur Laufzeit des PHP-Scripts auch Grafiken erzeugen.
Zeichenkodierung - Schriftzeichen richtig darstellen
Oft werden Umlaute, Akzentzeichen oder andere fehlerhafte Zeichen auf der Webseite angezeigt. Auch der Inhalt einer E-Mail, vom Kontaktformular der Website, kann falsche Umlautzeichen enthalten. Beispiele um diese Zeichen in der richtigen Zeichenkodierung darzustellen.
.htaccess - Passwortschutz für Webseiten
Mit einer .htaccess Datei und einer .htpasswd Passwort-Datei lassen sich bestimmte Verzeichnisse und die darin enthaltenen Dateien vor unerlaubtem Zugriff schützen.