mail():SMTP服务器响应:550-“ JunkMail被拒绝

时间:2018-11-06 02:42:00

标签: email smtp

我想使用公司网站中的联系表发送电子邮件, 我在php中设置了电子邮件配置,这是我的表格:

<form action="sendmail.php" method="post" class="form form--contacts">
<input type="text" name="name" class="form__input" placeholder="Name" required>
<input type="email" name="email" class="form__input" placeholder="Email" required>
<input type="text" name="subject" class="form__input" placeholder="Subject" required>
<textarea class="form__textarea" name="text" placeholder="Text"></textarea>
<input class="form__btn" name="send" type="submit" value="Send">
</form>

,这里是 sendmail.php

<?php
if($_POST['send']){
    $admin = 'myname@mydomain.co.id';

    $name   = htmlentities($_POST['name']);
    $email  = htmlentities($_POST['email']);
    $subject    = htmlentities($_POST['subject']);
    $text   = htmlentities($_POST['text']);
    $headers =  'MIME-Version: 1.0' . "\r\n";
    $headers .= 'From:'.$name.' <'.$email.'>' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

    $pengirim   = 'From: '.$name.' <'.$email.'>';

    if(mail($admin, $subject, $text, $headers)){
        echo 'SUCCESS: Mail Successfully sending';
    }else{
        echo 'ERROR: Error Sending Email';
    }
}else{
    header("Location: index.php");
}
?>

1 个答案:

答案 0 :(得分:0)

检测垃圾邮件的原因可能很少。

首先,您的标题中没有“ To:”。

第二,您依赖系统邮件,无法控制从哪个帐户发送邮件。如果您的“发件人:”标头与您的SMTP连接中的实际“邮件发件人:”不同,则这是垃圾邮件过滤器的红色标记。

您应该尝试使用PHPMailer而不是内置函数。 (https://github.com/PHPMailer/PHPMailer)或其他替代方法。

在此信息中可能会找到一些信息:Sending email with PHP from an SMTP server