Hallo zusammen,
ich möchte eine Oberfläche erstellen, mit der ich Datensätze aus einer Datenbank auswählen und löschen kann.
Vorgestellt habe ich mir das so:
$sql = "SELECT * FROM fragebogen";
$result = mysqli_query($c, $sql);
$namen = array();
while ($row = mysqli_fetch_array($result)){
$namen[] = $row['titel'];
}
echo "<form name='f' method='post' action='Loeschen.php'>";
foreach ($namen as $i){
echo "<input type=checkbox name=$i />" .$i ."<br>";
}
echo "<input type='submit' name='löschen' value='löschen' /></form>";
foreach ($namen as $p){
if (isset($_POST[$p])){
$delete = "DELETE FROM Fragebogen WHERE titel='$p'";
mysqli_query($c, $delete);
echo "<big>$p</big> wurde gelöscht <br>";
}
}
Die Datensätze werden selektiert und in einem Array gespeichert. Für jeden Datensatz soll eine Checkbox mit Name=Titel generiert werden. Beim submit werden alle gewählten Datensätze gelöscht.
Nun zu meiner Frage:
Das Beispiel funktioniert, jedoch nur wenn der Titel des Fragebogens keine Leerzeichen enthält.
Sind Leerzeichen enthalten, wird der Teil
if (isset($_POST[$p])){
$delete = "DELETE FROM Fragebogen WHERE titel='$p'";
mysqli_query($c, $delete);
echo "<big>$p</big> wurde gelöscht <br>";
}
}
nicht ausgeführt. Kann es sein, dass das "Name"-Attribut der Checkbox nicht richtig nicht den gewünschten Wert annimmt?
Vielen Dank im Voraus für eure Hilfe!
Gruß Maetzzen