Gerhard Knabe: Tabelle mit datensätzen bearbeiten können

Beitrag lesen

Die Tabelle, aus der Daten gelöscht werden sollen sollte über einen Primärschlüssel verfügen. Über diesen kannst Du dann einen Datensatz eindeutig identifizieren. In der Ausgabe erfolgt dann in jeder Zeile die Verknüpfung zum Löschen des entsprechenden Datensatzes mittels
<a href='delete.php?id=PRIMARYKEY'>
wobei PRIMARYKEY natürlich durch den Wert des Primärschlüssels des zu löschenden Datensatzes zu ersetzen ist.
Im Skript delete.php greifst Du dann auf $_GET["id"] zu und erstellst NACH VALIDIERUNG DER GET-VARIABLEN eine SQL Anweisung zum Löschen des entsprechenden Datensatzes. Die Validierung sorgt dafür, dass nicht beliebige Datensätze (z.B. durch SQL-Injektion) gelöscht werden. Gerade bei modifizierenden Abfragen ist soetwas wichtig, um einem totalen Datenverlust vorzubeugen. Ein Aufruf von delete.php?id=1%20OR%201
würde ohne Validierung aus der über
$query="DELETE FROM tabellenname WHERE id=$id"
erstellten Abfrage die Abfrage
DELETE FROM tabellenname WHERE id=1 OR 1
machen und so die gesamte Tabelle löschen. Es sollte sichergestellt sein, dass jeder nur die Datensätze löschen kann, die zu löschen er auch berechtigt ist.
Das Öffnen/Antworten/Bearbeiten funktioniert nach dem gleichen Prinzip.

MfG
GK