使用phpmailer 5.2错误地设置了'from'字段的电子邮件

时间:2016-07-14 13:04:00

标签: php phpmailer

为什么没有按原样发送FROM字段没有多大意义。

这是代码:

    $mail             = new PHPMailer();            

        $mail->IsSMTP(); // telling the class to use SMTP

        //$mail->SMTPDebug  = 1;                   
        $mail->SMTPAuth   = true;                  
        $mail->SMTPSecure = "tsl";                
        $mail->Host       = "smtp.gmail.com";
        $mail->Port       = 587;                  
        $mail->Username   = "gui.desenvolvedor@gmail.com"; 
        $mail->Password   = "***";
        $address = "gui.desenvolvedor@gmail.com";
        $mail->AddAddress($address, "Guilherme");


        $mail->SetFrom("from@from.com.br", "from you");  //<------ HERE
        $mail->AddReplyTo("reply@reply.com.br", "reply be");


        $mail->Subject    = "Email enviado pelo site.";         
        $mail->AltBody    = $mensagem;              
        $mail->MsgHTML($mensagem);

        if(!$mail->Send()) {
            echo "Mailer Erro: " . $mail->ErrorInfo;
        } else {    
            echo "Mensagem Enviada!";
        }

我收到的电子邮件是:

enter image description here

我使用的是最新版本的phpMailer 5.2

1 个答案:

答案 0 :(得分:1)

这不是你的错 - 你正在做的一切 - 但你不能这样做,因为Gmail不允许你从任意地址发送。您可以做的最好的事情是在gmail首选项中预定义一些别名并使用它们。

这在PHPMailer文档和Microsoft.TeamFoundation.WebApi.Client中有所介绍。