dedlfix: Problem mit UPDATE

Beitrag lesen

Tach!

klicke ich auf "Bearbeiten" (jeweils links in der HTML-Tabellenzeile des entsprechenden Datensatzes, wird mir zwar die Eingabemaske mit dem bisher vorhandenen Wert im Feld "Name" angezeigt, das Skript wartet aber gar nicht, bis ich ich auf "Daten absenden" geklickt habe, sondern ersetzt den bisherigen Eintrag einfach durch einen Leerstring.

Das Script kann nicht warten. Es arbeitet auf dem Server und als Ergebnis kommt die Ausgabe auf den Browser. Das Script muss nun beendet sein und darf keine Tätigkeiten ausführen, die erst nach einem erneuten Request seitens des Browsers stattfinden dürfen. Üblicherweise existiert keine dauerhafte Verbindung zwischen Client und Server. Client stellt eine Anfrage, Server antwortet. Ende der Geschichte. Irgendwann der nächste Request - oder auch nicht.

Im Klartext: Der Bearbeiten-Link erzeugt einen GET-Request. Das aufgerufene Script holt die Daten und erzeugt eine Seite mit ausgefülltem Eingabeformular. Ende des Scripts. Daten verändernde Aktionen werden mit einem POST-Request abgeschickt. Das action-Attribut des Formulars kann auch wieder auf daselbe Script zeigen. Damit hast du nun die Art des Requests als Unterscheidungsmerkmal. Wenn GET mit ID als Parameter, dann ist es der erste Teil eines Updates, dann ausgefülltes Formular zur Verfügung stellen. Wenn GET ohne ID, dann wird es wohl ein Create sein, dann leeres Formular ausgeben. Wenn POST mit ID, dann wird es der zweite Teil des Updates sein, bei POST ohne ID ist es der zweite Teil vom Create.

Wieso ist $Name bzw. $_POST['Name'] nach dem erneuten Aufruf von enter() leer?

Weil es ein GET-Request war?

dedlfix.