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:


<source lang="html4strict"> <input type="submit" value="Submit" onclick="this.disabled=true,this.form.submit();" /> </source>

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