我一直在浏览有关该主题的所有建议帖子,但似乎找不到适合我或我完全理解的解决方案。
我只是想做一个简单的蜜罐,它检查隐藏字段是否被机器人填充,如果是,则破坏表单。我的问题似乎是使用 AJAX 来查看 PHP 值是否已清除。希望这是有道理的,因为我不精通编码语言。
我最初的想法是禁用任何填写该字段的机器人的提交按钮。但是,由于该字段直接为空白,因此表单会加载提交按钮并且该点丢失了。
这是表单检查机器人的一部分:
<!-- THE HONEYPOT -->
<li id="artificial-detect">
<label for="artificials">If you see this, leave this form
field blank and invest in CSS support.</label>
<input name="artificials" type="text" value="">
</li>
<!-- /HONEYPOT -->
<?php
$spam = $_POST['artificials']; // This is our Honeypot field
if($spam) { // If the Honeypot field has been filled in
die("No spamming allowed bitch!");
} else { ?>
<li class="last">
<input class="submit" type="submit" name="submit">
</li>
<?php } ?>
我不明白现在该怎么办:
jQuery.('#salesforce-crm-form .submit').click(function(){
jQuery.ajax({
// Get PHP function that determines whether the honeypot has been snatched.
});
});
我正在为 action="" 使用外部 URL,所以我想也许只有当 PHP 返回干净的机器人时才能插入。