Hallo liebe Forumgemeinde,
nach tagelanger Suche und verzweifeltem Variablengeschubse habe ich mich dazu entschlossen meine Frage im Forum zu äußern.
Es geht darum, dass ich einen Artikel aus meiner Datenbank zuerst aus einer Auswahlliste/Dropdown auswähle (das klappt soweit auch) und dann über einen Button löschen möchte. Und genau an diesem Punkt komme ich nicht weiter. Ich vermute, dass es am value= Wert scheitert - er also nicht das selektierte Element nimmt und in meiner Löschen-Methode verarbeitet. Ich habe an der Stelle schon sehr viel versucht - zuletzt mit loeschen($_GET["anr"]) oder nur löschen($z) - allerdings auch ohne Erfolg.
Die Fehlermeldung, die ich erhalte lautet: "Undefined index: anr in ...\bestelldatenbank\e3_artikel_loeschen.php on line 17"
Ich würde mich wirklich sehr über einen Gedankenanstoß freuen.
Besten Gruß,
Steven
nach tagelanger Suche und verzweifeltem Variablengeschubse habe ich mich dazu entschlossen meine Frage im Forum zu äußern.
Es geht darum, dass ich einen Artikel aus meiner Datenbank zuerst aus einer Auswahlliste/Dropdown auswähle (das klappt soweit auch) und dann über einen Button löschen möchte. Und genau an diesem Punkt komme ich nicht weiter. Ich vermute, dass es am value= Wert scheitert - er also nicht das selektierte Element nimmt und in meiner Löschen-Methode verarbeitet. Ich habe an der Stelle schon sehr viel versucht - zuletzt mit loeschen($_GET["anr"]) oder nur löschen($z) - allerdings auch ohne Erfolg.
Die Fehlermeldung, die ich erhalte lautet: "Undefined index: anr in ...\bestelldatenbank\e3_artikel_loeschen.php on line 17"
Code:
<!DOCTYPE html> <html lang="de"> <head> <meta charset="utf-8" /> <title>Aufgabe 3</title> </head> <body> <?php $artikel = new artikel(); ?> <form method = "post"> <label for="artik">Artikel:</label> <?php echo $artikel->einfuegenSelect("artikel", "anr", "name", NULL); ?> <input type="submit" name="loesch" value= <?php $artikel -> loeschen($_GET["anr"]); ?> Löschen > </form> <?php class artikel { private $tabelle = "artikel"; public function loeschen($z) { try { $pdo = new PDO ( 'mysql:dbname=bestelldatenbank;host=localhost;charset=utf8', 'root', '' ); } catch ( PDOException $e ) { die ( $e->getMessage () ); } $sql = "DELETE FROM " .$this->tabelle ." WHERE anr = :anr"; if ($stmt = $pdo -> prepare($sql)) { $stmt->bindParam(':anr', $z); $stmt -> execute(); echo "Artikel gelöscht!"; } } public function einfuegenSelect($tabelle, $val, $text, $def) { try { $pdo = new PDO ( 'mysql:dbname=bestelldatenbank;host=localhost;charset=utf8', 'root', '' ); } catch ( PDOException $e ) { die ( $e->getMessage () ); } $s = "<select name=\"" .$val ."\" id=\"" .$val ."\">"; $sql = "SELECT " .$val .", " .$text ." FROM " . $tabelle; if ($stmt = $pdo -> prepare($sql)) { $stmt -> execute(); while ($z = $stmt -> fetch()) { $s = $s ."<option value=\" . $z[0] .\""; $s = $s .">" .$z[0] ." | " .$z[1]."</option>"; } $s = $s ."</select>"; return $s; } else { return false; } } } ?> </body> </html>
Besten Gruß,
Steven
Kommentar