16
Okt
08

Formulare einfach gegen SPAM schützen

Als Entwickler und Betreiber eines Gästebuches, ist es meistens nur eine frage der Zeit bis der erste SPAM eintrudelt. Die wohl gängigste Lösung ist das Einbinden eines Captchas. Doch auch diese für den Gast nicht immer angenehmen SPAM-Blocker, werden oft durch Texterkennungsprogramme geknackt. Da dies auch auf der Peacemountain Seite schon öfters der Fall gewesen ist, habe ich einmal etwas neues ausprobiert. Die Idee ist recht simpel und funktioniert bisher ziemlich zuverlässig.

Im Formular wird einfach ein zusätzliches, verstecktes Feld eingebunden und das Formular wir über eine JavaScript-Funktion gesendet:


<form id="guestbook" method="post">
  <input type="hidden" name="spam" value="yes"/>
  <input type="submit" value="Speichern" onClick="send();"/>
</form>

Die Funktion zum Senden ist sehr einfach gestrickt:


function send() {
  eval("document.forms['guestbook'].elements['spam'].value='no'");
  return true;
}

Jetzt muss lediglich serverseitig der Parameter spam geprüft werden, ob dieser immer noch den Wert “yes” enthält.

Da die meisten SPAM-Schleudern wohl zwar einen hochentwickelten Textscanner eingebaut haben aber keine JavaScript-Funktionen ausführen, wird der Parameter vor dem Senden nicht geändert, wie das der Browser machen würde. Einziger Wehmutstropfen bleibt, dass Gäste ohne eigeschaltetes JavaScript im Browser keine Einträge machen können.




7 Kommentare zu “Formulare einfach gegen SPAM schützen”



  1. Gravatar-Bild 1 flöschen 23. Dez 2008 um 12:56

    Für WordPress habe ich YAWASP entdeckt, das beruht auf einem ähnlichen Prinzip, braucht nur kein JavaScript und ist daher für alle menschlichen Besucher problemlos. Für die Bots sieht es hingegen (bei mir) schlecht aus…

  2. Gravatar-Bild 2 Techi 31. Dez 2008 um 21:35

    Bei mir hat ein CAPTCHA den Trick getan. Es war schon zu dem Punkt das die Instandhaltung von Kommentaren und dem Gästebuch meine ganze Zeit aufgefressen hat. Bin echt froh, dass das CAPTCHA ausreichend war. Sag mal kann man dein Javascript gegebenfalls in eine Drupalseite einbauen. Falls ja, wie?

  3. Gravatar-Bild 3 michi 1. Jan 2009 um 11:36

    Also ich kenn Drupal nicht, aber das kann man dort auf jeden Fall einbauen :P

  4. Gravatar-Bild 4 Blankster 2. Jan 2009 um 23:44

    Warum setzt ihr nicht einfach auf ReCaptcha (gibt übrigends auch für Drupal, Serendipity - wahrscheilich auch Wordpress)? Habe ihr mal über das ganze geblogt: http://www.blankster.info/blog/archives/94-ReCaptcha-Zwei-Fliegen-mit-einer-Klappe.html

    Ich finde das Projekt echt sinnvoll und man kann damit auch wirklich was gutes der Allgemeinheit beitragen. Grössere Seiten wie Facebook setzen mitlerweile auch schon darauf.. Und aus eigenen Erfahrungen mit meinem Blog kann ich nur sagen dass es wirklich sehr gut funktioniert.

  5. Gravatar-Bild 5 michi 3. Jan 2009 um 18:45

    ReCaptcha habe ich bisher auch immer erfolgreich eingesetzt, bin da der gleichen Meinung wie du. Komischerweise hat dies aber auf einer Coldfusion Seite nicht geklappt und ich hatte keine Lust stundenlang auf Fehlersuche zu gehen, wesshalb ich einen kurzerhand einen anderen Ansatz ausprobiert habe (Der übrigens bis heute noch einwandfrei klappt).

  6. Gravatar-Bild 6 Golfplätze Schweiz 21. Feb 2009 um 0:21

    Kann man eigentlich sagen, dass Captchas sozusagen “überholt” sind? Denn ich muss für einen Heimatverein ein Gästebuch erstellen und möchte hierfür natürlich auch einen Schutz einbauen. Also was würdest du ganz klar favorisieren?

  7. Gravatar-Bild 7 michi 21. Feb 2009 um 12:52

    Das würde ich so nicht sagen.

    Für kleine Seiten ist die obere Methode sehr Effektiv, alle meine Captchas wurden bisher geknackt, aber durch diese einfache Methode hatte ich seit der Aufschaltung keinen einzigen Spam Eintrag mehr.

    Auf anderen Seiten habe ich auch sehr erfolgreich Recaptcha eingesetzt, hat auch wunderbar funktioniert und hilft auch noch einem guten Zweck.

Kommentare sind zur Zeit deaktiviert.

September 2010
M D M D F S S
« Jun    
 12345
6789101112
13141516171819
20212223242526
27282930  

Werbung


Buttonitis