Formular einmalig senden?

11/18/2015 16:23 The_Dentist#1
Hallo,

ich habe folgendes Problem, ich habe ein Kontaktformular geschrieben. Nun möchte ich unterbinden das bei "Reload" der Seite, die Nachrichten immer und immer wieder versandt werden.

Ich habe gelesen, dass kann man mit einem input hidden Feld umgehen, allerdings habe ich das nicht ganz verstanden.

Kann mir Jemand dabei helfen?
Danke!

Gruß
11/18/2015 19:01 Mikesch01#2
Du generierst mittels PHP einen Hash-Wert (zufälliger Wert) und speicherst diesen in eine Session-Variable ab. Diese gibst du als hidden-Input an das Formular, damit dieses mitgesendet wird.

Beim Ziel-Script des Formulars fragst du nun diesen Wert ab und vergleichst ihn mit der abgespeicherten Session-Variable.

Da bei jedem Aufruf der Seite ein neuer Hash-Wert generiert wird, aber du mittels Reload immer die "alten" Daten schickst und sich nun der Hash-Wert unterscheidet, kannst du somit ermitteln, dass ein Reload stattgefunden hat und dann die weiteren Skripte mittels If-Verzweigung umgehen.

Glaube so müsste es funktionieren.