dedlfix: LOCK für mysql

Beitrag lesen

echo $begrüßung;

Ich habe ein Web-Formular! Manchmal kommt es vor, dass wenn jemand extrem schnell und mehrmals hintereinander auf den SUBMIT-Button klickt, dass dann ein Datensatz zweimal vorkommt (außer AUTO INCREMENT)

Dabei hilft dir ein Locking nicht weiter. Der Client setzt zwei Requests ab. Der zweite wartet dann bis das Locking vom ersten Request beendet ist und trägt dann seinen Datensatz ein. Du musst verhindern, dass der Client zwei Request absetzen kann oder dass der zweite Request bearbeitet wird. Clientseitig kann man versuchen, das mittels Javascript zu verhindern. Nach Absenden des Formulars kann man den Submit-Button disablen. Serverseitig kann man das beispielsweise verhindern, indem dem Formular ein eindeutiger Einmal-Wert mitgegeben wird. Dieser wird z.B. in einer Session gespeichert. Kommt ein zweiter Request mit dem gleichen Wert, kann er ignoriert werden.

echo "$verabschiedung $name";