2016-07-14 154 views
0

没有多大意义,为什么从字段没有发送,因为它应该是。电子邮件'from'字段设置不正确与phpmailer 5.2

这是代码:

$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 = "[email protected]"; 
     $mail->Password = "***"; 
     $address = "[email protected]"; 
     $mail->AddAddress($address, "Guilherme"); 


     $mail->SetFrom("[email protected]", "from you"); //<------ HERE 
     $mail->AddReplyTo("[email protected]", "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!"; 
     } 

电子邮件I'm接受的是:

enter image description here

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

+0

使用 查询 $ mail-> From =“[email protected]”; $ mail-> FromName =“Full Name”; 它的工作 –

+0

我很抱歉,但我得到了同样的结果。从电子邮件被设置为[email protected] –

+1

无关的问题:你有一个错字。 “SMTPSecure”应该是“tls'',而不是”tsl''。 – Synchro

回答

1

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

这包括在PHPMailer文档和other questions中。