0

我正在尝试构建一个向表单所有者和用户提交副本的表单。但是,当我尝试将第五个变量插入 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(以及一般的 web 开发)的一切。

问候

4

2 回答 2

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);

你把你的发件人、抄送、密件抄送等字段放在标题中。

于 2013-05-06T11:56:24.720 回答
1

不能这样使用from,请参考http://php.net/manual/en/function.mail.php

于 2013-05-06T11:58:32.143 回答