I bot hanno difficoltà a leggere CSS o JavaScript, almeno per ora.
alcuni modi per prevenire lo spamming bot w/o captcha sono:
<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>
Come si può vedere il campo nome utente verrà nascosto. I robot non possono riconoscerlo. Quello che devi fare dopo è solo convalidare che questo campo è vuoto sul tuo codice di back-end.
<?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
}
Il processo di cui sopra può essere fatto più facile con l'uso del modulo BOTCHA Spam Prevention
Inoltre è possibile avere uno sguardo su questi articoli per avere una migliore visione d'insieme del soggetto.
Green-beast e web design, ma si possono trovare decine di articoli come questo sul web così
Posso usare direttamente il tag html "nascosto"? – torr
Non ti consiglierei di farlo perché non è supportato su IE. Non riesco a capire il motivo del downvote ... – Thanos
Quello che ho fatto è reindirizzare l'accesso diretto: 'die ('"); ' – chiappa