0

私のサイトには、名前とメールフィールドだけのAweberフォームがたくさんあります。フォームは多くのスパム登録を取得しています。これらのボットがフォームに入力するのを防ぐ方法はありますか?

<form method='post' action='http://www.aweber.com/scripts/addlead.pl'>
  <div style='display:none;'>
    <input type='hidden' name='meta_web_form_id' value='-----' />
    <input type='hidden' name='meta_split_id' value='' />
    <input type='hidden' name='listname' value='-----' />
    <input type='hidden' name='redirect' value='-----' />

    <input type='hidden' name='meta_adtracking' value='-----' />
    <input type='hidden' name='meta_message' value='1' />
    <input type='hidden' name='meta_required' value='name,email' />
  </div>

  <ul class='vMenuForm'>
    <li class='lname'>Name(<span class='red'>*</span>):</li>
    <li class='name'><input type='text' name='name' value=''/></li>
    <li class='lemail'>Email(<span class='red'>*</span>):</li>
    <li class='email'><input type='text' name='email' value=''/></li>
    <li class='submit'><input class='button' type='submit' name='submit' value=''/></li>
  </ul>
  <div style='display: none;'><img src='http://forms.aweber.com/form/displays.htm?id=HKwMHMzMTCyM' alt='' /></div>
</form>

これは、現在存在するフォームの1つです。何か案は?

4

3 に答える 3

2

reCAPTCHA (by Google)のようなキャプチャ システムや、「今日は何の日?」などの特別な「人間だけが答えられる」タイプのものを使用します。

また、非常に優れた PHP プラグインとサンプルも用意されています。これは非常に簡単です。次のように使用するだけです。

require_once('recaptchalib.php');
$publickey = "public_key";
echo recaptcha_get_html($publickey);

いくつかの「ハニーポット」テクニック (通常は非表示になっているためにユーザーが入力できないフィールドですが、通常はボットが入力するフィールド) を試すことができますが、ボットは最近、あなたがハニーポットのフィールドを両方とも非表示に設定しました。CSS と JavaScript を使用しているため、すべてのボットが停止されるという保証はありません。

于 2011-08-06T04:20:19.060 に答える
2

通常、スパム ボットが入力するため、"last_name"、"first_name" などの type="hidden" として、いくつかの "honeypot" フィールドを入力します。次に、サーバー側で、それら 2フィールドが入力されています。その場合は、追跡の試みをログに記録し、データの処理を停止します。キャプチャも一部は役に立ちますが、最近ではそれほどではありません。

于 2011-08-06T04:21:55.147 に答える
1

JavaScriptを使用してフォームを動的に作成します。これにより、単純なボットがフォームを投稿できなくなります。このソリューションには欠点がありますが、ユーザーは JavaScript を有効にする必要があります。

于 2011-08-06T04:28:22.020 に答える