Daten nur einmal senden
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
bekommen
button
code
datum
email
formular
funktion
helfen
idee
jemand
klicken
lange ladezeit
problem
senden
verhindern
versuch
-
Hallo zusammen,
ich habe ein Formular welches mit einem Submit-Button Daten verschickt. Allerdings möchte ich nun verhindern dass jmd einfach zwei oder dreimal hintereinander klickt (was bei den langen Ladenzeiten zur Zeit leider häufig vorkommt).
Ich habe eine kleine JavaScript-Funktion die den Button nach dem ersten mal senden ausblendet.
Allerdings werden jetzt gar keine Daten mehr an mein PHP-Script übermittelt.
Vielleicht hat jemand von euch schon so ein ähnliches Problem gehabt und kennt eine gute Lösung...
formular.php (vereinfacht)
<?php if(isset($_POST['senden')) { $email = $_POST['email']; etc... } ?> <html> <head> <script type="text/javascript"> <!-- function ChangeButton2(button) { button.value = "Bitte warten..."; button.disabled = true; } // --> </script> </head> <body> <form action="formular.php" method="post"> <input type="text" name="email" /> <input type="submit" name="senden" value="Senden" onclick="ChangeButton2(this)" /> </form> </body> </html>
Sobald ich dann den Submit-Button drücke wird die JavaScript-Funktion ausgeführt aber das Forumlar nicht abgesendet.
Ich hoffe es kann jmd helfen
mfg
alfr3d
Beitrag zuletzt geändert: 4.8.2010 14:55:14 von alfr3d -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Das ändert aber nix daran, dass ich durch die lange Ladezeit immernoch öfters auf den Absende-Button klicken kann...
Ich muss das irgendwie so realsiert bekommen, dass nach dem ersten klick der Button ausgeblendet wird und die Daten aber trotzdem noch übermittelt werden...
Praktisch wie hier bei Lima-city wenn man einen neuen Beitrag schreibt...
Beitrag zuletzt geändert: 4.8.2010 16:51:09 von alfr3d -
Quick & Dirty (und auch nur, weil ich müde bin...):
<html> <head> <script type="text/javascript"> <!-- function ChangeButton2() { document.getElementById('submit').style.visibility = "hidden"; document.getElementById('status').innerHTML = "Bitte warten..."; } // --> </script> </head> <body> <form action="formular.php" method="post"> <input type="text" name="email" /> <span id="status"></span> <input type="button" name="senden" value="Senden" onclick="ChangeButton2()" id="submit" /> </form> </body> </html>
Beitrag zuletzt geändert: 5.8.2010 0:46:57 von fabo -
Bleibt weiterhin das Problem dass das Formular nicht abgesendet wird...
Die JavaScript-Funktion funktioniert einwandfrei - aber das Problem ist einfach dass wenn ich ein OnClick-Event einfüge das Formluar nicht gesendet wird...
Keiner eine Idee wie man das machen kann? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage