4.4.x – Doppeltes Abschicken von Formularen unterbinden
Hallo Forum,
wir haben seit einiger Zeit eine Website für die Registrierung zu Veranstaltungen mit Contao umgesetzt. Es sind recht einfache Formulare, deren Daten in der DB gespeichert und per E-Mail versendet werden.
Das klappt grundsätzlich problemlos, allerdings kommt es recht oft vor, daß die Datensätze doppelt oder gar mehrfach in der DB abgelegt werden. Vermutlich durch Ungeduld, weil nicht sofort was passiert oder durch mehrfaches Zurück- und Vor-Navigieren, bzw. Reloads.
Wie kann man das unterbinden? Eine Möglichkeit wäre, nach dem Absenden den "Request Token" zu löschen, der für das Absenden erforderlich ist. Ein anderer Weg wäre, eine Spalte in der DB-Tabelle auf "unique" zu setzen, so daß dieser Wert nur 1x vorkommen darf. Aber beides würde zu der Ausgabe einer System-Fehlermeldung führen, die die Leute dann reklamieren. Ein Captcha sollte unbedingt vermieden werden.
Habt Ihr eine Idee? Vielen Dank für Eure Tipps!
Grüße
Achim
EDIT:
Man könnte natürlich auf das submit event hin den Absende-Button für ein paar Sekunden ausblenden, damit liese sich zumindest Ungeduld abfangen.