Dropdown
Rafael
- php
Hallo.
Folgendes Problem. Hört sich einfach an, ist es vielleicht auch.
Habe im Internet nicht wirklich eine Lösung gefunden und auch selbst basteln bringt mich nicht wirklich weiter.
Erstmal erkläre ich mein Problem, dann zeig ich euch was ich habe =)
Ich habe eine Datenbank in der Artikel verwaltet werde können. Diese Artikel haben einen Status (Neu - Gebraucht - Defekt). Dieser Status wird in der DB als Text gespeichert - soweit alles gut.
Nun habe ich eine Seite wo alle Artikel schön in Tabellenform dagestellt werden. Sieht auch echt gut aus :p
Nun kommt das Problem, ich möchte gerne den Status in einem Dropdown-Menü darstellen lassen. Es soll immer der Zustand ausgewählt werden der grad aktiv ist - soweit habe ich das auch alles noch hinbekommen. Jetzt soll der User den Status auch ändern können, und zwar soll er aus dem Dropdown einen anderen Status wählen, eine JS-Confirm Box soll nochmal kurz erscheinen und beim anklicken von OK soll der Status in der DB geändert werden!
$status = array("Neu"=>"Neu",
"Gebraucht"=>"Gebraucht",
"Defekt"=>"Defekt");
echo '<td>';
echo '<select id="'.$selcounter.'" onchange="return Box(this.value)">';
foreach ($status as $dbstatus => $display) {
echo '<option value="'.$dbstatus.'"';
if ($dbstatus == $line->status) echo ' selected="selected"';
echo '>'.$display.'</option>';
}
echo '</select>';
echo '</td>';
Der Wert in onchange wird übergeben an die JS-Funktion Confirmbox funktioniert auch. Wie geht es weiter? Ich habe noch kein/e Formular/e angelegt.
Im Grunde musst du nur einen Weg finden, ein entsprechendes Updatequery an die DB zu senden. Wenn du ohnehin schon mit JavaScript arbeitest, könnte eine AJAX-Funktion eine Möglichkeit darstellen. Ansonsten: Leite bei erfolgter Bestätigung an eine Seite weiter, die per GET-Parameter die Anweisung zur Änderung umsetzt. (zum Beispiel: change[12]='Neu' -> der eintrag mit der id 12 soll auf den status neu geändert werden.
Achtung vor SQL-Injections.)