PHPMailer $ mail->来自不使用gmail的标头

时间:2013-06-08 15:57:53

标签: php email gmail phpmailer

我使用以下代码在使用PHP邮件程序类https://github.com/Synchro/PHPMailer提交表单后发送邮件。邮件发送并成功收到。唯一没有做到的事情是:

$mail->From = $email;

$email是用户将在表单上输入的电子邮件(使用$_POST变量设置)。我希望这封电子邮件显示是来自填写表单的用户,因此我可以点击回复并将其转到他们的电子邮件地址。

但是,“发件人”电子邮件地址设置为$mail->Username,即PHPMailer脚本发送的gmail帐户的用户名。

enter image description here

我在这里做错了什么,以及如何让From电子邮件标题生效?

另外,我正在使用Gmail接收邮件 - 也许有一个gmail安全设置,不允许“发件人”电子邮件被“伪造”???

谢谢!

$email = $_POST['email'];
$name = $_POST['moveName'];

require("class.phpmailer.php");
$mail = new PHPMailer();

$mail->IsSMTP();
$mail->Host = 'ssl://smtp.gmail.com';
$mail->Port = 465;
$mail->SMTPAuth = true;
$mail->Username = 'example@gmail.com';
$mail->Password = 'password';

$mail->From = $email;
$mail->FromName = $name;
$mail->AddAddress('me@gmail.com');
$mail->AddReplyTo($email, $name);

$mail->IsHTML(true);

$mail->Subject = 'Quote Request';
$mail->Body    = 'hey';

$mail->Send();

1 个答案:

答案 0 :(得分:3)

使用gmail,您必须首先将电子邮件地址配置为允许“$ mail->”。此FAQ条目说明了如何执行此操作:https://support.google.com/mail/answer/22370?hl=en