我无法获得此标头来显示某些奇怪原因所需的变量。我知道它非常轻微。我知道这有效:
$headers .= 'Bcc: example@aol.com' . "\r\n";
有人可以帮我解决这个问题。完整代码:
<?php
if ($_POST){
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$message .= "<hr />Sent from your Website at example.com.";
$to = 'person@aol.com';
$from = $email;
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
// THE EMAIL IS NOT SENDING THE SENDER OF THE EMAIL
// the from and bcc do not work as needed!
// More headers, put on double quotes
$headers .= 'From:'.$from."\r\n";
$headers .= 'Bcc: '.$from."\r\n";
// send
if (mail($to,$subject,$message,$headers))
{
echo "Message was successfully sent! $from";
} else {
echo "Something went wrong..";
}
} else {
}
?>
答案 0 :(得分:2)
在您的第一个&#39; Bcc之后,你错过了一个点(句号):&#39;。
应该是
$headers .= 'Bcc: ' . $from . "\r\n";
更新:
使用\ r和\ n等特殊字符时,需要使用双引号。在您的原始示例代码中,您使用了双引号,但我现在看到您的完整代码未实际使用它们,您使用的是单引号。
PHP中的单引号字符串显示特殊字符作为文字。
所以你的行应该是
$headers .= 'From: ' . $from . "\r\n";
$headers .= 'Bcc: ' . $from . "\r\n";
答案 1 :(得分:0)
使用它将完美地工作:
$headers .= 'From: "'.$from.'"' . "\r\n";
答案 2 :(得分:0)
最简单,最好的方式
"From: ". $email. "\r\n";