ERLEDIGT
NEIN
NEIN
ANTWORTEN
11
11
ZUGRIFFE
900
900
EMPFEHLEN
-
31.08.08 17:07 #1
Und noch ein thema habe ich, was mich brennend interessiert.
Wie kann man das mehrmalige absenden von Formulardaten verhindern?
Wenn man ausversehen mehrmals auf den submit-Button klickt, soll es trotzdem nur einmal versendet werden.
Gibts da nen Lösungsansatz für?
PeterBrillen, Sonnenbrillen und Kontaktlinsen
"Stimmt es, daß die Arbeit am Computer dumm macht?" - "Sie haben nichts zu befürchten. Computer können einen wahnsinnig machen, aber nicht dumm."
-
Ich würde das mittels JavaScript lösen und einfach die Schaltfäche disablen.
Die Welt ist binär: Entweder man ist eine Eins oder eine Null, tot oder lebendig! - Und ich? Lebe...
-
31.08.08 17:15 #3
Hi
Hm,..von JavaScript habe ich ja noch weniger Ahnung.
Was ist den wenn der Benutzer JavaScript ausgeschaltet hat?Dann kann man diese Lösng ja auch canceln denke ich mal.Brillen, Sonnenbrillen und Kontaktlinsen
"Stimmt es, daß die Arbeit am Computer dumm macht?" - "Sie haben nichts zu befürchten. Computer können einen wahnsinnig machen, aber nicht dumm."
-
Eine ganz einfache Lösung wäre auch das setzen von einer Session-Variable
oder einem Cookie ob schon einmal das Formular gesendet wurde.
Falls du eine Serverbasierte Lösung willst müsstest du dir schon IP und Datum
des Absenders merken und das ganze speichern und abgleichen.
Ich denke aber die erste Lösung reicht schon
lg
-
01.09.08 18:15 #5
Würde die serverseitige Version vorziehen.
Wie würde der Vergleich denn ungefähr aussehen? Also von der Logik her?Brillen, Sonnenbrillen und Kontaktlinsen
"Stimmt es, daß die Arbeit am Computer dumm macht?" - "Sie haben nichts zu befürchten. Computer können einen wahnsinnig machen, aber nicht dumm."
-
Mensch hier schläft ja alles ein wenn man nichts schreibt

Dachte andere helfen evt auch mal...
Besteht das Problem noch?
Ich würde mir die aktuelle IP mit dem dazugehörigen Formularnamen und der Uhrzeit in eine mySQL-Tabelle speichern und dann beim Formularaufbau gucken ob die IP in den letzten x Minuten schonmal einen Eintrag bekommen hat... Ganz einfach.
Aber der Aufwand ist trotzdem höher als alles in eine Session zu speichern.
Ich meine wer hat schon lust immer den Browser neu zu starten nur um dich zu ärgern und die Formulardaten öfter zu senden?!
Ansonsten evt noch ne Captcha-Lösung?!
Dann muss man halt öfter den "Sicherheitscode" eingeben...
lg
-
IP muß nicht eindeutig sein....
1 router oder netzwerk 2-x.000 rechner werden von dem script alle unter der gleichen ip erkannt.
PHP-Code:$message = md5($_POST["nachricht"]....);
$kontrollstring = substr($message, 20);
/// DB connect...
$query = "select * from ... where kontroll = '".$kontrollstring."' && timestamp < ".time()-*;
if(empty(mysql_fetch_assoc(mysql_query($query))){
// führe aus
$query = "insert into .... (timestamp, kontroll) values (".time().", "'.$kontrollstring."'")";
mysql_query($query);
}
// FEHLER
-
Ja da hast du recht.
Bei deinem Script änder ich aber auch nur 1 Zeichen der Nachricht und schon kann ich das Formular nochmal senden...
lg
-
Wenn in einem Blog oder forum relativ viel und schnell nachrichten versendet werden, kannst du via ip jedoch auch dinge blockieren, die schon sinn beinhalten...
Bots senden meist die selben inhalte....
Es werden die daten nicht verarbeitet nur weil man mal wieder auf refresh drückt...
Bei AOL oder vereinzelten anderen Anbietern, bekommt man immer mal wieder schnell ne neue ip zugewiesen...
Am meisten sinn, beinhaltet wohl ein mix aus beidem ip auf zeit und md5 kontrollwert...
Perfekt gibt es meist nie, jeder hat eine andere Vorstellung...
Kurz und knapp viele wege führen nach Rom...
-
Markus Wulftange
-
Ist bei Sessions nicht das akzeptieren von Cookies ein muß?
Falls ja, ist dies ein Kriterium was dagegen sprechen würde...
-
Die Sitzungs-ID kann auch in der URL oder mittels eines versteckten Formularelements übertragen werden.
Markus Wulftange
Ähnliche Themen
-
Direktes Absenden eines Formulars verhindern
Von bertiSR im Forum Javascript & AjaxAntworten: 7Letzter Beitrag: 21.08.09, 16:58 -
mehrfaches ausloggen verhindern
Von Sketty im Forum PHPAntworten: 11Letzter Beitrag: 11.11.08, 14:41 -
Mehrfaches Absenden von Formularen in manchen Fällen zulassen
Von supachecka im Forum PHPAntworten: 7Letzter Beitrag: 30.11.07, 15:01 -
Form: Absenden verhindern
Von Raven280438 im Forum HTML & XHTMLAntworten: 3Letzter Beitrag: 19.10.07, 08:42 -
absenden verhindern bei einzeiligen formular-text-feldern
Von webdev im Forum PHPAntworten: 16Letzter Beitrag: 21.05.06, 12:24





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren