Jak zabezpieczyć formularz przed podwójnym kliknięciem / przypadkowym ponownym wysłaniem.

Z Podręcznik Administratora by OPZ SGU
Przejdź do nawigacji Przejdź do wyszukiwania

W czasie tworzenia pewnej strony www, za jej plecami wykonywany był mechanizm wysyłania wiadomości e-mail.

W związku z powyższym użytkownik musiał poczekać w niepewności te kilka chwil zanim php połączy sie z smtp i wyślę wiadomość.

Zauważyłem że niektóre powiadomienia dochodziły dwa razy... a co to oznacza ?

Po krótkim dochodzeniu dowiedziałem się...

Oznacza fakt, że niecierpliwy user klikał dwa razy, myśląc że coś nie działa.

Aby zabezpieczyć się przed tym wystarczy dodać taki kod:


<input type="submit" value="Submit" onclick="this.disabled=true,this.form.submit();" />
<input type="image" src="http://serwer/jakisplik.png" alt="nieklikajdwarazy" name="submit"  onclick="this.disabled=true,this.form.submit();">