Hallo,
auf meiner Seite sendet ein User durch klick auf ein Bild ein Formular ab.
Wenn er nun allerdings F5 drückt bzw. irgendwie die Seite neu läd, wird dieses Formular natürlich erneut abgesendet und alles nochmals ausgeführt.
Gibt es eine einfache Möglichkeit das zu unterbinden? (Der Benutzer bekommt sowieso einen Reload-Button von mir generiert, der er benutzen kann)
Zwei Möglichkeiten sind mir schon eingefallen, aber die sind alle nicht so wirklich schön:
1. In der Datenbank zu jedem User eine Transaktions-ID hinterlegen die immer um 1 hochgezählt wird. Stimmt die ID des Formulars nicht mehr mit dieser überein, wird einfach nichts mit den Fomulardaten gemacht
--> Overhead in der Datenbank, möchte ich wenn möglich vermeiden
2. Nach dem ausführen der verschiedenen Funktionen mit den Formulardaten lade ich die Seite einfach neu (per Meta-Header-Angabe o.Ä.). Der User befindet sich immer auf der gleichen Seite, weshalb ich einfach ein festes Ziel hinterlegen kann
--> Auch wieder total viel Overhead bzw. verschwendete Bandbreite weil die Seite doppelt geladen wird.
Gibts da bessere Lösungen?
auf meiner Seite sendet ein User durch klick auf ein Bild ein Formular ab.
Wenn er nun allerdings F5 drückt bzw. irgendwie die Seite neu läd, wird dieses Formular natürlich erneut abgesendet und alles nochmals ausgeführt.
Gibt es eine einfache Möglichkeit das zu unterbinden? (Der Benutzer bekommt sowieso einen Reload-Button von mir generiert, der er benutzen kann)
Zwei Möglichkeiten sind mir schon eingefallen, aber die sind alle nicht so wirklich schön:
1. In der Datenbank zu jedem User eine Transaktions-ID hinterlegen die immer um 1 hochgezählt wird. Stimmt die ID des Formulars nicht mehr mit dieser überein, wird einfach nichts mit den Fomulardaten gemacht
--> Overhead in der Datenbank, möchte ich wenn möglich vermeiden
2. Nach dem ausführen der verschiedenen Funktionen mit den Formulardaten lade ich die Seite einfach neu (per Meta-Header-Angabe o.Ä.). Der User befindet sich immer auf der gleichen Seite, weshalb ich einfach ein festes Ziel hinterlegen kann
--> Auch wieder total viel Overhead bzw. verschwendete Bandbreite weil die Seite doppelt geladen wird.
Gibts da bessere Lösungen?