使用SMTP发送邮件时使用Cc和Bcc的问题 - PHP

时间:2014-03-24 07:22:24

标签: php email smtp

我正在使用SMTP从我的php页面发送电子邮件。除了Bcc之外,一切都很完美。

这就是我收到电子邮件的方式,有趣的是我也可以看到密送。 enter image description here

我的代码出了什么问题,有人可以帮忙。

$Headers = array("MIME-Version"=> '1.0', 
"Content-type" => "text/html; charset=iso-8859-1",
"From" => $From,
"To" => $To, 
"Bcc" => $User_copy,
"Reply-To" => $From,
"Subject" => $Subject);

$SMTP = Mail::factory('smtp', array ('host' => $Host, 'auth' => true, 'username' => $Username, 'password' => $Password)); 
$mail = $SMTP->send($To, $Headers, $Message);

2 个答案:

答案 0 :(得分:2)

<强>诊断
您的邮件服务器不会删除密件抄送:标题。

<强>修正:
不要BCC:标题中指定密件抄送收件人 将密送收件人添加到send的第一个参数。

http://pear.php.net/manual/en/package.mail.mail.send.php

答案 1 :(得分:1)

试试这个。

$To=(string)$SendToEmail ;
$bcc = "WEBMASTERS_EMAIL_ADDRESS";
$recipients = $To.",".$bcc;
$headers["From"] = "who@whatever";
$headers["To"] = $To;
$headers["Reply-To"] = $visitormail;
$headers["Subject"] = $subject;
$mailmsg = $message;
/* SMTP server name, port, user/passwd */
$smtpinfo["host"] = "YOURSITEMAILSERVER.whatever";
$smtpinfo["port"] = "25";
$smtpinfo["auth"] = true;
$smtpinfo["username"] = "Emailaddress@YOURSITEMAILSERVER.whatever";
$smtpinfo["password"] = EMAIL_PASSWORD";
/* Create the mail object using the Mail::factory method */
$mail_object =& Mail::factory("smtp", $smtpinfo);
/* Ok send mail */
$mail_object->send($recipients, $headers, $mailmsg);