如何使用php阻止收件箱中的垃圾邮件
我已经用php为我的一个客户编写了一个联系我们表单及其流程页面 当用户提交表单时,将生成一封邮件,并将其重定向到“我的客户”收件箱 在这一天结束的时候,我收到了数以百计的未知垃圾邮件,我不知道它是从哪里产生的 由于这一点,我们的网站正处于被谷歌和其他搜索引擎列入黑名单的危险之中 任何人都可以给我一个解决方案,以阻止这种垃圾邮件,也请找到我的php邮件代码的附件 下面是我的php代码如何使用php阻止收件箱中的垃圾邮件,php,security,email-spam,Php,Security,Email Spam,我已经用php为我的一个客户编写了一个联系我们表单及其流程页面 当用户提交表单时,将生成一封邮件,并将其重定向到“我的客户”收件箱 在这一天结束的时候,我收到了数以百计的未知垃圾邮件,我不知道它是从哪里产生的 由于这一点,我们的网站正处于被谷歌和其他搜索引擎列入黑名单的危险之中 任何人都可以给我一个解决方案,以阻止这种垃圾邮件,也请找到我的php邮件代码的附件 下面是我的php代码 <?php if($_SERVER['REQUEST_METHOD'] == "POST") { $emai
<?php
if($_SERVER['REQUEST_METHOD'] == "POST")
{
$email = $_POST["email"];
$to = "test@myaddress.com";
$cname = htmlentities(ucfirst($_POST['name']));
$subject = "Subject Comes here";
$body= "Name : ";
$body.= $cname;
$body .= "\nE-mail : ";
$body .= htmlentities($_POST['email']);
$body.= "\nMessage : ";
$body.= htmlentities($_POST['message']);
function is_valid_email($email)
{
return preg_match('#^[a-z0-9.!\#$%&\'*+-/=?^_`{|}~]+@([0-9.]+|([^\s]+\.+[a-z]{2,6}))$#si', $email);
}
function contains_bad_str($str_to_test) {
$bad_strings = array(
"content-type:"
,"mime-version:"
,"multipart/mixed"
,"Content-Transfer-Encoding:"
,"bcc:"
,"cc:"
,"to:"
);
foreach($bad_strings as $bad_string) {
if(eregi($bad_string, strtolower($str_to_test))) {
header('Location: status.php?status=failed');
}
}
}
function contains_newlines($str_to_test) {
if(preg_match("/(%0A|%0D|\\n+|\\r+)/i", $str_to_test) != 0) {
header('Location: status.php?status=failed');
}
}
if (!is_valid_email($email)) {
header('Location: status.php?status=failed');
}
contains_bad_str($email);
contains_bad_str($subject);
contains_bad_str(body);
contains_newlines($email);
contains_newlines($subject);
$headers = "From: $email";
mail($to, $subject, $body, $headers);
header('Location: status.php?status=success');
}
?>
使用CAPTCHA来防止垃圾邮件机器人滥用您的联系人表单,并确保只有人类才能使用它。或者使用一个应该保持为空的隐藏字段。Spambot有填充所有输入字段的习惯
更多信息请点击此处:
可能重复的
查找我的php邮件代码的附件
代码在哪里??