フォームをスパム ボットから保護する簡単な方法を考えました。それで十分だと思うかどうか、皆さんに確認したいと思います。ただの問い合わせフォームなので、極端なセキュリティは必要ありません。電子メール アドレスがスパムに感染しないようにするためだけです。
次のようにフォームを作成するとします。
<div id="unlock">Click 3 times to unlock the form</div>
<form action="url">
<input type="email" />
<textarea></textarea>
</form>
そして、単純な javascript/jQuery を使用して、#unlock が 3 回クリックされたかどうかを確認します。その場合は、次のように name 属性をフォーム要素に追加します。
$('input[type=email]').attr('name', 'senderEmail');
私が行っている仮定は、フォーム要素の名前がわからないため、ボットがフォームを正しく送信できないということです。もちろん、フォームの値がサーバー上で正しいかどうかを確認します。正しくない場合、フォームは送信されません。この仮定は正しいですか?同じことを行うことは可能だと思いますが、代わりに action 属性を form タグに追加しますか?! そうすれば、ボットは受信 URL を知らなくてよいのでは?!
私が言ったように、私は非常に重要なものを保護しているわけではありませんが、「一般的な」スパムボットを止めたいだけです.