Sie machen hier PHP auf prozedurale Weise. Das bedeutet, dass die Anweisungen nacheinander ausgeführt werden, sodass das Problem in der Art und Weise liegt, wie Sie Ihre Anweisungen platzieren.
In Ihrem Code zeigen Sie zuerst das Formular an und aktualisieren es erst dann, deshalb werden die vorherigen Werte abgerufen, obwohl die Aktualisierung erst später erfolgt.
Lösung: Die Funktion save_edits()
und sein Aufruf sollte zuerst kommen, gefolgt von edit_page().
Eine weitere wichtige Sache in Bezug auf die Sicherheit, Sie fügen den Wert, den Sie aus der Adressleiste erhalten, direkt ein. Im Moment kann jemand Ihre ganze Tabelle löschen, indem er in ein schreibt Stück Code
. Sie könnten mysql_real_escape_string()
verwenden um es zu verhindern (wenn auch nicht vollständig) oder noch besser:
Bitte verwenden Sie mysql_*
nicht Funktionen in neuem Code
. Sie werden nicht mehr gepflegt und sind offiziell veraltet
. Siehe roter Kasten
? Erfahren Sie mehr über vorbereitete Erklärungen
Verwenden Sie stattdessen PDO
, oder MySQLi
- dieser Artikel
hilft Ihnen bei der Entscheidung, welche. Wenn Sie sich für PDO entscheiden, ist hier ein gutes Tutorial
.
Schließlich schließen Sie Ihr <form>
nicht Tag.