php X-mailer: почта отправлена ​​дважды - PullRequest
0 голосов
/ 27 марта 2019

Я подготовил форму и php-код для отправки электронного письма с подтверждением.

вот код, который я пробовал:

$mail_boundary = "=_NextPart_" . md5(uniqid(time()));
$sender = "postmaster@mysite.it";
'''
$text_msg = "messaggio in formato testo";
$html_msg = "<b>messaggio</b> in formato <p><a href='http://www.aruba.it'>html</a><br><img src=\"http://hosting.aruba.it/image_top/top_01.gif\" border=\"0\"></p>";

$msg = "This is a multi-part message in MIME format.\n\n";
$msg .= "--$mail_boundary\n";
$msg .= "Content-Type: text/plain; charset=UTF-8\n";
$msg .= "Content-Transfer-Encoding: 8bit\n\n";
$msg .= "\r\n";
'''
$msg .= "\n--$mail_boundary\n";
$msg .= "Content-Type: text/html; charset=UTF-8\n";
$msg .= "Content-Transfer-Encoding: 8bit\n\n";
$msg .= "<br><br>";
'''
$msg .= "\n--$mail_boundary--\n";
$headers = "From: $sender\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/alternative;\n\tboundary=\"$mail_boundary\"\n";
$headers .= "X-Mailer: PHP " . phpversion();
if(mail('my-mail', "Summary from $name", $msg, $headers, "-f$sender")) {
    mail($email, "Summary", $msg, $headers, "-f$sender");
    header("Refresh: 5; url=landing_page");
    echo "Mail sent.<br>";
    echo "You're being redirected.";
}
else {
    echo "Error"
}

После того, как форма отправлена, php-код отправляет двойное письмо. Я хочу одно электронное письмо для меня, а другое для клиента. Как я могу решить проблему двойной электронной почты?

Спасибо

1 Ответ

1 голос
/ 27 марта 2019

Почтовая команда вызывается дважды, поэтому электронное письмо будет отправлено дважды. То, что вы хотите, это что-то вроде

$m = mail($email, "Summary from $name", $msg, $headers, "-f$sender");

if($m) {
    header("Refresh: 5; url=landing_page");
    echo "Mail sent.<br>";
    echo "You're being redirected.";
}
else {
    echo "Error"
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...