Generieren Sie einen einmaligen Schlüssel für die einmalige Verwendung, um mit dem Formular zu senden.
Sich auf Javascript zu verlassen, ist eine schlechte Idee, weil es möglicherweise vom Benutzer im Client deaktiviert wurde. Mit dem Schlüsselschema kann, wenn das Senden vom Server empfangen wird, die Übermittlung für diesen Schlüssel gesperrt werden. Sie können auf doppelte Übermittlungen antworten, wie Sie möchten.
Damit dieser Ansatz funktioniert, müssen Schlüssel eindeutig und schwer vorhersehbar sein. Andernfalls könnten einige Formulare aufgrund von Schlüsselkollisionen gesperrt werden. Damit Sie die Schlüssel nicht bei jeder Formularübermittlung verfolgen müssen und Konflikte vermeiden, sollten die Schlüssel mit der Sitzung des Benutzers ablaufen. Die andere Sache, auf die Sie achten sollten, ist, wenn böswillige Benutzer den Schlüssel vorhersagen können, ist Ihr Code anfällig für irgendeine Art von Hijacking oder DOS-Exploit.
Können Sie das Ereignis deaktivieren, das beim Drücken von Enter ausgelöst wird? –
Klatschen Sie sie jedes Mal, wenn sie es tun. Irgendwann werden sie lernen :) – Gordon
Ich würde empfehlen, mit Form Keys. Sehen Sie sich das hier an: http: //net.tutsplus.com/tutorials/php/secure-your-forms-mit-form-keys/ –