Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verhindert man die erneute Übermittlung von Formularen auf PHP-Seiten?

Wie verhindert man die erneute Übermittlung von Formularen auf PHP-Seiten?

Linda Hamilton
Linda HamiltonOriginal
2024-11-03 07:25:02326Durchsuche

How to Prevent Form Resubmission on PHP Pages?

Verhindern der erneuten Übermittlung von Formularen auf PHP-Seiten

Bei der Arbeit mit PHP-Seiten, die Formularelemente enthalten, ist es wichtig, sich mit dem Problem der Verhinderung von Formularen zu befassen erneute Übermittlung bei Seitenaktualisierung. Dies ist besonders wichtig, wenn die Seiten Einfügefunktionen enthalten, die nur einmal ausgeführt werden sollen.

Das Post-Redirect-Get-Muster

Die empfohlene Lösung ist die Verwendung des Post-Redirect-Get-Musters. Redirect-Get (PRG)-Muster. Dies umfasst die folgenden Schritte:

  1. Eine POST-Anfrage annehmen:Die Formulardaten werden in einer POST-Anfrage empfangen.
  2. Die Daten verarbeiten: Die Daten werden verarbeitet und die entsprechende Aktion (z. B. Einfügen von Daten) wird ausgeführt.
  3. Eine Umleitungsantwort ausgeben: Eine 303 „See Other“-Umleitungsantwort wird an einen neuen ausgegeben URL.
  4. Akzeptieren Sie eine GET-Anfrage: Der Browser stellt eine neue GET-Anfrage an die umgeleitete URL.
  5. Geben Sie eine 200-Antwort aus: Die Der Server antwortet mit dem Statuscode 200 „OK“ und zeigt die Seite an.

Behandlung der Formulardatenanzeige

Wenn Sie Daten aus dem übermittelten Formular anzeigen müssen Erwägen Sie auf der umgeleiteten Seite, einen eindeutigen Bezeichner (z. B. eine Zeilen-ID) in die Abfragezeichenfolge der Umleitungs-URL aufzunehmen. Dadurch können Sie die verarbeiteten Daten aus der Datenbank abrufen, wenn die GET-Anfrage gestellt wird.

Das obige ist der detaillierte Inhalt vonWie verhindert man die erneute Übermittlung von Formularen auf PHP-Seiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn