Frage

Ich versuche, den Formular-Spam auf unserer Website zu reduzieren.(Es ist eigentlich ziemlich neu).

Ich glaube mich zu erinnern, irgendwo gelesen zu haben, dass die Spammer das Javascript auf der Website nicht ausführen.

Ist das wahr?Und wenn ja, könnten Sie dann einfach prüfen, ob Javascript deaktiviert ist, und dann feststellen, dass dies der Fall ist wahrscheinlich dass es Spam ist?

War es hilfreich?

Lösung

Es gibt immer noch viele Leute, die mit deaktiviertem Javascript arbeiten.

Alternativ habe ich gute Erfolge damit erzielt, Formular-Spam mithilfe von CSS zu stoppen.Fügen Sie grundsätzlich ein Eingabefeld und eine Beschriftung ein, die mithilfe von CSS ausgeblendet werden (display: none;) und überprüfen Sie nach dem Absenden, ob etwas in das Feld eingegeben wurde.

Ich bezeichne das Feld im Allgemeinen als Spamfilter mit der Anweisung dazu nicht Geben Sie alles in das Feld ein, aber alle neueren Browser verbergen den Block ordnungsgemäß.

reCaptcha ist zudem überraschend einfach umzusetzen.

Andere Tipps

überprüfen http://kahi.cz/wordpress/ravens-antispam-plugin/ für eine nette Antwort

wenn es reinkommt

<noscript><p><label for="websiteurl99f">Please type "e73053": </label><input type="text" name="websiteurl99f" id="websiteurl99f" /></p></noscript>
        <script type="text/javascript">/* <![CDATA[ */ document.write('<div><input type="hidden" name="websiteurl99f" value="e' + '73053" \/><\/div>'); /* ]]> */</script>

So sehen Javascript-Benutzer nichts, Nicht-JS-Benutzer geben einfach ein Wort ein

Wenn ein Spammer gezielt Sie anspricht, wird es nicht lange dauern, ihn zu umgehen, aber für Drive-by-Spammer sollte es gut sein

Ebenso ist das Hinzufügen eines Dummy-Felds und das anschließende Ausblenden mit CSS eine gute Möglichkeit, die Bots auszutricksen.Wenn das Feld übermittelt wird, wissen Sie, dass das Formular wahrscheinlich von einem Nichtmenschen ausgefüllt wurde.

Besonders effektiv, wenn Sie das Feld mit etwas beschriften/benennen URL oder Webseite.

Sie könnten überprüfen, ob Sie über JavaScript verfügen, das ein ausgeblendetes Formularfeld mit einem bestimmten Wert füllt nach Die Seite wird geladen.Wenn die Seite dann an den Server zurückgesendet wird, überprüfen Sie, ob das ausgeblendete Formularfeld den erwarteten Wert aufweist.Wenn es nicht vorhanden ist, bedeutet das, dass das JavaScript nicht ausgeführt wurde.

Ob Sie davon ausgehen sollten, dass es sich um Spam handelt, ist eine ganz andere Geschichte, auf die es eigentlich keine eindeutige Antwort gibt.Du könntest einfach eine haben <noscript> Tag und lassen Sie es den Benutzer darauf hinweisen, dass seine Übermittlung nur dann möglich ist, wenn er JavaScript aktiviert.

Sobald jedoch JavaScript ausgeführt wird, verwenden die Spammer hierfür einfach eine andere Problemumgehung.:) :)

Ich kann mich nicht erinnern, wo ich diese Methode gesehen habe, aber Spam-Bots füllen gerne Formulare aus.Haben Sie darüber nachgedacht, ein Formularfeld einzufügen, das mit Javascript ausgeblendet ist (und besagt, dass dieses Feld nicht ausgefüllt werden soll, wenn der Benutzer nicht über JavaScript verfügt)?Auf diese Weise können Sie etwas, das dieses Feld ausfüllt, als Spam ignorieren.

Hattest du damit Glück?Ich denke, einige textbasierte Browser haben grundlegende JavaScript-Unterstützung implementiert, also vielleicht auch Spam-Bots?

Ansonsten denke ich darüber nach, ein Captcha für Benutzer ohne JavaScript und eine automatische JavaScript-Prüfung für andere Benutzer zu verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top