Bitte austesten: Formular-Spamschutz
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habs ja schon ein paar mal angesprochen - die Idee vom barrierefreien, benutzerfreundlichen und spamsicheren Kontaktformular.
Nun habe ich den PHP-Code noch ein bisschen weiterentwickelt und eine Klasse daraus gebastelt. Meine bitte an euch wäre, die Klasse mal komplett auszutesten, hinsichtlich funktionalität, etc. Das Einbinden ist zwar weiterhin ein bisschen komplex, aber doch leichter als bisher. Das Skript (welches unter der LGPL steht) findet sich im Anhang, hier ist ein kommentiertes Beispiel dazu. Bitte sagt Bescheid, wenn ihr Fehler findet oder Verbesserungswünsche habt :) PHP-Code:
Ich hoffe, dass das ganze halbwegs verständlich war und ich damit ein paar Formulare mehr Spamsicher und Benutzerfreundlich machen konnte ;) |
Also Gratuliere!
Soweit ich das beurteilen kann, werkelt das prima! Das einbinden fällt gar nicht schwer. Frage: die Style Definitionen tragen important, warum? Darf ich das Teil in meinem CMS verwenden? Gerne auch mit Hersteller Namen im Quelltext! genial das script! |
Ich finde die Idee, dass der Bot nicht in der Lage ist, Felder nach Wichtigkeit zu unterscheiden, wirklich gut. Und wie ich bereits sagte, hat mich diese Idee auch bei meinem Kontaktformular geholfen.
Die ganze Sache ist mir insgesamt, wie du ja selber schon gesagt hast, etwas zu unkomfortabel. Ich halte es halt für einfacherer und noch barrierefreundlicher, wenn man sich ein paar Felder überlegt, die man nicht mit CSS verstecken muss. Aber gut, dass ist dann vielleicht auch ein Stück weit Geschmackssache. ;) |
Ein Feld das nicht versteckt ist, wird garantiert von dem einem oder andern User ausgefüllt.
Und dann? |
Dann handelte es sich um die Postleitzahl oder Hausnummer und die dazugehörige Straße, in der mein Kontaktmann wohnt.
Und diese Eingaben lassen sich von der Form her sehr grob kontrollieren. Die Hausnummer und Straße sind von einem Leerzeichen getrennt, die Hausnummer ist logisch eine Zahl. Beispiel: VIPixel - Webdesignbüro |
Ich verstehe ietzt was Du meinst.
Halte aber die Methode/Idee von fox für einen Tick sicherer. Mal sehen wie das Formular tut, wenn man es in ein bestehendes Design-Set einbaut. Dazu komme ich erst in ein paar Tagen. Gruß |
Hallo,
danke erstmal fürs testen. Zitat:
Zitat:
Durch das !important werden die späteren Style-Definitionen, die vom Skript generiert werden, außer Kraft gesetzt. Wir haben also dann zwei Regeln: 1. Das !important vor den Skript-Definitionen 2. Die Skript-Definitionen mit oder ohne !important. Wenn jetzt im Skript selbst ein !important steht, wird diese Regel verwendet, andernfalls die Regel aus der ersten Definition. Somit steht zwar bei dem Skript-CSS bei allen Feldern display:none, etc. - aber nur bei den IDs mit !important hinten dran gelten diese Regeln auch. D.h. die Felder, die angezeigt werden sollen bekommen kein !important. :) Zitat:
Aber deine Methode hat einen gewissen Nachteil: Die Bots können darauf angepasst werden, da die Felder und Feldnamen immer gleich sind. Wie hoch die Wahrscheinlichkeit ist, dass das ein Spammer sowas wirklich macht, bleibt abzuwarten, müsste man eventuell austesten. :roll: Fakt ist jedenfalls, dass beide Methoden bis dato relativ sicher sind, wenn ich das mal behaupten darf. :) |
Zitat:
|
Hallo Fox,
erst einmal vielen, vielen Dank für Dein Skript. Die Idee mit dem getarnten Eingabefeld ist super. Leider funktioniert bei mir aber genau diese Tarnung nicht. :shock: Ich habe einmal Dein Test-Skript wie es in der zip-Datei von heute Mittag zu finden ist hochgeladen. Nachdem ich einen kleinen Fehler korrigiert hatte (das Formular verweist auf secureForm.php, müßte aber auf secureForm_example.php verweisen) funktioniert die prinzipielle SPAM-Bot-Erkennung. Nur wird - wie gesagt - das getarnte Eingabefeld nicht getarnt. Hier der Link http://web199.michelle.webhoster.ag/...rm_example.php Über einen Tip würde ich mich sehr freuen. Danke + Gruß SWT |
Kann ich gleich machen:
Du hast zwar den Formverweis korrigiert, aber den CSS Verweis nicht! <link rel="stylesheet" type="text/css" href="secureForm_example.php?getCSS&PHPSESSID=0g6o0lmrpckrrd7n49fq0geh12" media="all" /> Wenn Du schon dabei n´bist, wirf auch das "&" im URL raus und ersetze es durch "&". Gruß |
Alle Zeitangaben in WEZ +2. Es ist jetzt 10:04 Uhr. |
Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
© Dirk H. 2003 - 2023