Jak zabezpieczyć formularz przed podwójnym kliknięciem / przypadkowym ponownym wysłaniem.: Różnice pomiędzy wersjami

Z Podręcznik Administratora by OPZ SGU
Przejdź do nawigacji Przejdź do wyszukiwania
m (Zastępowanie tekstu - "</source>" na "</pre>")
m (Zastępowanie tekstu - "<source lang="html4strict">" na "<pre>")
 
Linia 13: Linia 13:




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


<source lang="html4strict">
<pre>
<input type="image" src="http://serwer/jakisplik.png" alt="nieklikajdwarazy" name="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();">
</pre>
</pre>

Aktualna wersja na dzień 00:58, 16 lut 2018

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();">