mail()中有四个以上变量的问题 - PHP

时间:2013-05-06 11:53:27

标签: php email variables limit

我正在尝试构建一个向表单所有者和用户提交副本的表单。然而 当我尝试在mail()中插入第五个变量时,似乎最后一个变量停止工作:

if( empty($errors))
{
    $to = $email_address; //user email
    $email_subject = "Some text";
    $email_body = "more text"; 
    $from = "From: $myemail \n"; //form owner email
    $headers = "Bcc:" . $myemail;

    mail($to,$email_subject,$email_body,$from,$headers);

    header("Location: $where");
}

从我那里拿出$获取发送给用户和表单所有者的邮件的副本,但是没有可能控制电子邮件的“from”字段 - 留下$ header表单所有者不会收到副本。如果可能的话我都喜欢。

我提前为我的问题的简单性道歉 - 我所知道的关于php的一切(以及一般的网络开发)我从聪明的家伙那里得到了这样的论坛。

问候

2 个答案:

答案 0 :(得分:3)

这些是邮件的正确参数:

bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )

如您所见,第4个参数不是“from”,而是标题字符串。

尝试以下示例:

<?php
$to      = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);

你将你的,cc,bcc等字段放在标题中。

答案 1 :(得分:1)

您不能像这样使用,请参阅http://php.net/manual/en/function.mail.php