Moin!
Ich versuche gerade ein Anti-Spam Formular zu erstellen für mein Gästebuch.
Hierfür habe ich ein unsichtbare textarea mit festgelegtem und vorgegebenen Inhalt in das Formular eingebaut, da dieses Textfeld später bei der E-Mail als Betreff angezeigt wird.
<textarea name="betreff" style="display:none" Readonly style="width: 154px; height: 20px">Gästebuch Jugendkompanie Handorf-Langenberg</textarea>
Den Inhalt hab ich wie folgt festgelegt:
else if (document.Formular.betreff.value.length < 40 || document.Formular.betreff.value.indexOf ('Jugendkompanie',0) == -1 || document.Formular.betreff.value.indexOf ('Handorf-Langenberg',0) == -1) {
alert("Bitte geben Sie einen Betreff ein!")
return false;
}
Wenn ich dieses Formular teste ( indem ich den Text der textarea verändere oder gar keinen Text einfüge) funktioniert es genauso wie ich will, d.h. der Eintrag wird nicht gesendet.
Aber komischerweise können die Spamer den Eintrag absenden ohne auch nur ein einziges Wort in die textarea einzutragen. Irgendwie wurde der readonly-Befehl im Formular, die indexof und die length Bedingungen umgangen.
Im Prinzip ist das ja unmöglich deswegen hoffe ich, dass mir einer von euch bei diesem Problem weiterhelfen kann, da ich schon fast am verzweifeln bin und ich es satt habe mindestens 40 Spameinträge pro Tag auszusortieren.