Javascript 如何防止垃圾邮件发送者从我的联系人表单向我发送空白电子邮件
我在我的网站上有一个简单的联系方式,几天前我开始从网站上的联系方式收到半封空白的电子邮件 它们看起来与下面的示例相同,只填写了姓名和电子邮件字段,但电话和消息字段为空: 名称:5906f36c9c72b 电子邮件:njhjlee@gmail.com(随时发送不同的电子邮件) 电话:Javascript 如何防止垃圾邮件发送者从我的联系人表单向我发送空白电子邮件,javascript,php,email,contact-form,spam-prevention,Javascript,Php,Email,Contact Form,Spam Prevention,我在我的网站上有一个简单的联系方式,几天前我开始从网站上的联系方式收到半封空白的电子邮件 它们看起来与下面的示例相同,只填写了姓名和电子邮件字段,但电话和消息字段为空: 名称:5906f36c9c72b 电子邮件:njhjlee@gmail.com(随时发送不同的电子邮件) 电话: 消息: 这是HTML代码: <form id="contactform" action="assets/php/mail_submit.php" method="post">
消息: 这是HTML代码:
<form id="contactform" action="assets/php/mail_submit.php" method="post">
<div class="row">
<div class="col-xs-12 col-md-4">
<input type="text" name="name" id="name" placeholder="Your Name" required/>
</div><!--column-->
<div class="col-xs-12 col-md-4">
<input type="text" name="email" id="email" placeholder="Your email" required/>
</div><!--column-->
<div class="col-xs-12 col-md-4">
<input type="text" name="phone" id="phone" placeholder="Ваш телефон" required/>
</div><!--column-->
<p class="antispam">Leave this empty: <input type="text" name="url" /></p>
<div class="col-xs-12 col-md-8">
<textarea placeholder="Message" name="message" id="message" required></textarea>
</div><!--column-->
<div class="col-xs-12 col-md-4">
<input class="btn btn-default" id="submit" type="submit" value="Send"/>
</div><!--column-->
</div><!--row-->
</form>
我检查了日志,发现所有的垃圾邮件发送者机器人都来自Thor网络,并且具有不同的IP。我试过验证码,但没用。请提供建议帮助…尝试加强javascript检查,同时使用“修剪”: 使用PHP str_word_count加强对空消息的检查 例如 或者你可以使用
function FilterData($value){
$trimmed = trim($value);
$notags = strip_tags($trimmed);
return $notags;
}
然后:
$name = FilterData($_POST['name']);
对于您可以使用的电子邮件
$email = filter_var($email, FILTER_SANITIZE_EMAIL);
更多信息和
希望有帮助;) 使用验证码,这可以防止大多数机器人。如果没有用,说明你没有正确地执行。嗨,我试过了,但是垃圾邮件还是来了。无论如何,谢谢你!消息还是空的吗?
$message= filter_input(INPUT_POST, 'message');
// check $message is not empty and that it contains more than 5 words
if($message != "" || str_word_count($message) < 5) {
echo "Message is valid"
}else{
echo "Invalid Message";
}
$name= filter_input(INPUT_POST, 'name');
function FilterData($value){
$trimmed = trim($value);
$notags = strip_tags($trimmed);
return $notags;
}
$name = FilterData($_POST['name']);
$email = filter_var($email, FILTER_SANITIZE_EMAIL);