Bots kämpfen mit dem Lesen von CSS oder JavaScript, zumindest für den Moment.
Einige Möglichkeiten, wie Sie Bot Spam-w/o Captcha verhindern können, sind:
<form method="post" action="send.php">
<ol>
<li>
<label for="name">Name</label>
<input type="text" name="name" value="">
</li>
<li>
<label for="email">Email</label>
<input type="text" name="email">
</li>
<!-- We hide this with CSS,that's why it has an ID. -->
<li id="user">
<label for="username">Username</label>
<input type="text" name="username">
</li>
<!-- //end -->
<li>
<input type="submit" name="submit" value="Send It!">
</li>
</ol>
</form>
Wie Sie das Feld Benutzername versteckt werden sehen können. Bots können das nicht erkennen. Was Sie danach tun müssen, ist nur zu validieren, dass dieses Feld in Ihrem Backend-Code leer ist.
<?php
if(!isset($_POST['name'])) { die("No Direct Access"); } // Make sure the form has actually been submitted
$name = $_POST['name'];
$email = $_POST['email'];
$spam = $_POST['username']; // Bot trap
if($spam) { // If the hidden field is not empty, it's a bot
die("No spamming allowed bitch!");
} else {
// Process the form like normal
}
Das Verfahren oben kann mit dem Einsatz des Moduls BOTCHA Spam Prevention
auch einfacher durchgeführt werden Sie einen Blick auf diese Artikel haben einen besseren Überblick über das Thema zu bekommen.
Green-beast und web design aber Sie können Dutzende Artikel wie dieser auf dem Netz als auch
Kann ich direkt verwenden, um den HTML-Tag „versteckt“ finden? – torr
Ich würde dir nicht raten, da es auf IE nicht unterstützt wird. Ich kann den Grund des Downvote nicht verstehen ... – Thanos
Was ich getan habe, ist Direktzugriff umleiten: 'sterben (' ');' – chiappa