我正在尝试从我的php发送电子邮件:
$to = 'it@7sisters.in';
$email_from = "info@7sisters.in";
$full_name = 'Suraj Hazarika';
$from_mail = $full_name.'<'.$email_from.'>';
$subject = "testing sender name";
$message = "";
$message .= '
<p><strong>This is only a test . Please do not reply.</strong><br />
';
$from = $from_mail;
$headers = "" .
"Reply-To:" . $from . "\r\n" .
"X-Mailer: PHP/" . phpversion();
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to,$subject,$message,$headers);
我正在关注教程PHP E-mail Form Sender Name Instead Of E-mail?,但我仍然收到带有主机名的发件人姓名的电子邮件。
From Date Subject
sisters@rsx02.justhost.com Fri, 11:24 pm testing sender name
sisters@rsx02.justhost.com Fri, 11:24 pm testing sender name
答案 0 :(得分:20)
您只在$from
标题中使用Reply-To
。如果您希望它位于From
标头中,则需要在From
标头中进行设置。
在mail()
命令之前输入类似的内容:
$headers .= 'From: ' . $from . "\r\n";
答案 1 :(得分:16)
我来到这个问题寻找不同的东西,但用相似的词语,所以这里是如何做我想要的:
在from
标题中,将地址放在尖括号中,将“发件人名称”放在它之外。
from: Don Draper <don.draper@website.com>\n
我希望收件箱说Don Draper
而不是don.draper
,这就是如何做到的。
答案 2 :(得分:5)
您还可以尝试使用PHP From
函数中的第五个参数将mail()
地址添加到邮件的“信封”中:
mail($to_mail, $subject, $message, $headers, "-f$from_email");
参考here。
有关邮件标题和信封的参考here
请注意,某些服务器设置可能会禁止此操作或发出警告,具体取决于其配置和/或邮件传输代理的配置。 This answer讨论了如何更新sendmail的“可信用户”。
答案 3 :(得分:3)
在标题行
之前添加此行$headers .= "From: Your Name <sitename@hostname.com> \r\n";
所以代码将是
$headers = "";
$headers .= "From: WIFI Metropolis <sitename@hostname.com> \r\n";
$headers .= "Reply-To:" . $from . "\r\n" ."X-Mailer: PHP/" . phpversion();
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to,$subject,$message,$headers);
答案 4 :(得分:1)
只需添加From标头即可。这样的事情。
$headers .= "From: website@mydomainname.com";
答案 5 :(得分:0)
尝试将From:
添加到标题
$headers = "" .
"Reply-To:" . $from . "\r\n" .
"From:" . $from . "\r\n" .
"X-Mailer: PHP/" . phpversion();
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
某些MTA可以更改/忽略此定义以避免垃圾邮件,并覆盖PHP.ini中配置的SMTP用户