我的网站上有这个php mail()代码,工作正常。
这是一个ecard系统,我的客户可以填写信息(姓名,电子邮件)和信息(姓名,电子邮件)等,Mail直接进入收件箱,google,hotmail,yahoo等。
当接收者收到电子邮件时,他可以使用回复按钮,并获得正确的信息。
问题是我的邮件表单中的From:
标题,我想将其从noreply@example.com
更改为收件人的信息或任何其他信息。当我这样做时,邮件会进入垃圾邮件。
这是我正在使用的代码
<?php
$name = $_REQUEST['name'] ;
$motive = $_REQUEST['email'] ;
$name2 = $_REQUEST['name2'] ;
$email2 = $_REQUEST['email2'] ;
$message = $_REQUEST['message'] ;
$subject = $_REQUEST['subject'] ;
$message = urldecode(stripslashes($message));
$headers = 'From:' . $name . ' John Q<noreply@example.com>' . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers.= "Reply-To:" .$name. "<" . $motive. ">\n";
$headers.= "Return-Path: My Company<admin@datatopixels.com>\n";
$headers.= "X-Mailer: PHP". phpversion() ."\n";
$messagee = "
<html>
<head>
<title>Title here</title>
</head>
<body>
<center>
<br>
</center>
</body>
</html>
";
mail($to, $subject, $messagee, $headers);
?>
答案 0 :(得分:0)
您必须添加针头:
示例代码:
$headers = "From: myplace@example.com\r\n";
$headers .= "Reply-To: myplace2@example.com\r\n";
$headers .= "Return-Path: myplace@example.com\r\n";
$headers .= "CC: sombodyelse@example.com\r\n";
$headers .= "BCC: hidden@example.com\r\n";
if ( mail($to,$subject,$message,$headers) ) {
echo "The email has been sent!";
} else {
echo "The email has failed!";
}
?>
我建议阅读oswalds's