【问题标题】:change the displayed sender email by phpmailer通过 phpmailer 更改显示的发件人电子邮件
【发布时间】:2014-12-11 12:34:43
【问题描述】:

这里当我通过 phpmailer 发送邮件时,用户名 testname 在邮件中。但是我希望显示 testname。 我从 phpmailer 中了解到的是 $mail->Username 和 $mail->Password 是身份验证所必需的,并且 $mail->Username 也用于信封邮件。有什么方法可以将 testname 更改为 testname。而且我也试过设置$mail->Sender,还是不行。我知道我在这里犯了一些愚蠢的错误,但我现在被困在这里。任何帮助将不胜感激。提前致谢。

    $mail->Username   = 'xyz@gmail.com';
    $mail->Password   = 'xxxxx';
    $name='testname';

    $mail->SetFrom('testmail.com', $name, true);

    $mail->AddReplyTo('no-reply@mycomp.com','no-reply');
    $mail->Subject    = 'subject';
    $mail->MsgHTML($body);

    $mail->AddAddress('xyz@gmail', 'title1');
    //$mail->AddAddress('abc2@gmail.com', 'title2'); /* ... */
    $fileName='../rough/test.pdf';
    $mail->AddAttachment($fileName);

【问题讨论】:

    标签: php email smtp gmail phpmailer


    【解决方案1】:

    尝试添加:

    $mail->From = 'sender@senderdomain.com';
    $mail->FromName = 'Sender Name';
    

    此外,正如 Selvin 指出的那样,众所周知,gmail 会重写标头以更改通过 gmail 发送的邮件的发件人信息,以便发件人与与发送邮件的 gmail 帐户关联的用户匹配。请参阅How to change from-address when using gmail smtp server 了解更多信息。

    【讨论】:

      【解决方案2】:

      如果您使用 PHPmailer 将邮件从 gmail id 发送到另一个 gmail id,gmail 会将经过身份验证的用户 id xyz@gmail.com 分配为发件人而不是 testmail.com,并将联系人姓名保存为 xyz@gmail.com 而不是 testname

      尝试向其他提供商发送邮件

      【讨论】:

        猜你喜欢
        • 2021-03-23
        • 1970-01-01
        • 1970-01-01
        • 2018-09-29
        • 1970-01-01
        • 1970-01-01
        • 2015-01-30
        • 2011-07-21
        • 2011-12-13
        相关资源
        最近更新 更多