我的代码是:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$messagesubject = $_POST['subject'];
$text = $_POST['text'];
$to = "name@email.com";
$subject = 'Message from a site visitor '.$name;
$content = 'Name: '.$name."\r\n";
$content .= 'E-mail: '.$email."\r\n";
$content .= 'Subject: '.$messagesubject."\r\n";
$content .= 'Message: '.$text."\r\n";
$headers .= 'From: '.$field_email."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";
";
$send_contact=mail($to,$subject,$headers,$content);
if($send_contact){
echo "Thank you!";
}
else {
echo "ERROR";
}
?>我收到一封邮件,但发件人的地址(从)是写我的电子邮件地址从主机服务器。如果我添加$headers (我在mail()中创建了这样的标题:$headers = 'From: '.$field_email."\r\n"; "),而不是没有收到任何邮件).
我做错什么了?我在这里面是个乞丐
发布于 2014-03-31 19:08:40
就像手册上说的( http://php.net/manual/en/function.mail.php )邮件函数变量是这样的:
mail($to, $subject, $message, $headers);你看起来是这样的:
mail($to, $subject, $headers, $message);切换它,您应该得到您想要的:)
发布于 2014-03-31 18:55:34
电子邮件中有效的From: header必须包含有效的电子邮件地址:
From: <someone@somewhere.xxx>
请注意括起来的括号。您还可以添加其他文本:
From: Someone Important <someone@somewhere.xxx>
https://stackoverflow.com/questions/22769778
复制相似问题