【发布时间】:2018-10-28 23:11:45
【问题描述】:
我使用 php mail 为邮件列表设置了一个简单的电子邮件,并且使用我找到的教程,我使用边界以纯文本和 html 格式发送它。
除主题行显示为
外,一切正常下一次朴茨茅斯 Bootstrap 会议回复:mailings@portsmouthbootstrap.org
我不明白为什么还会显示“回复”。我已经尝试添加 \n 和 \r 以及许多其他内容,但似乎无法阻止这种情况的发生。
我知道那里有更好的邮件系统,但如果您能对此有所了解,我们将不胜感激。
$mail_subject="Next Portsmouth Bootstrap meeting\r\n ";
require("connectdb.php");
$sql = mysqli_query($con, "SELECT email,name FROM maillist WHERE subscribed='1'");
if($sql === FALSE) { echo "err: ".mysqli_error($con); }
$encoding = "utf-8";
$subject_preferences = array(
"input-charset" => $encoding,
"output-charset" => $encoding,
"line-length" => 76,
"line-break-chars" => "\r\n"
);
while($row = mysqli_fetch_array($sql)) {
$email = $row['email'];
$name = $row['name'];
echo "name=".$name." email=".$email."<br/>";
$from_name="Portsmouth Bootstrap";
$from_mail="mailings@portsmouthbootstrap.org";
$boundary = uniqid('np');
$headers = "MIME-Version: 1.0\r\n";
$headers .= "From: ".$from_name." <".$from_mail."> \r\n";
$headers .= "Content-Type: multipart/alternative;boundary=" . $boundary . "\r\n";
$headers .= "Content-Transfer-Encoding: 8bit \r\n";
$headers .= "Date: ".date("r (T)")." \r\n";
$headers .= iconv_mime_encode("Subject", $mail_subject, $subject_preferences);
$headers .= "Reply-To: mailings@portsmouthbootstrap.org\r\n";
$headers .= "Return-Path: mailings@portsmouthbootstrap.org\r\n";
$headers .= "X-Mailer: PHP/" . phpversion();
$message = "This is a MIME encoded message.";
$message .= "\r\n\r\n--" . $boundary . "\r\n";
$message .= "Content-type: text/plain;charset=utf-8\r\n\r\n";
//Plain text body
$message .= $allmessageplain;
$message .= "\r\n\r\n--" . $boundary . "\r\n";
$message .= "Content-type: text/html;charset=utf-8\r\n\r\n";
$unsub = "<p>To unsubscribe from this mailing list please click <a href='https://portsmouthbootstrap.org/unsub.php?email=".$email."'>here</a></p>";
//Html body
$message .= $allmessage.$unsub;
$message .= "\r\n\r\n--" . $boundary . "--";
mail($email, $mail_subject, $message, $headers);
}
【问题讨论】:
-
我猜
iconv_mime_encode()可能有问题,因为我只能看到这些。翻阅手册,似乎包含重要的注释。 -
感谢您指出这一点。您对 iconv_mime_encode() 与主题相关是正确的,但是通读手册,我仍然看不到将回复添加到此行的任何原因:/
-
不客气。我也没有,我自己也从来没有使用过这个功能,所以我不能说到底是什么导致了这个。尝试删除纯文本或 html mime;或尝试邮件手册中的新脚本。或更改编码类型。希望我能帮助你更多。