Как создать тип содержимого электронной почты для multipart / mixed в php - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть контактная форма на сайте, которая отправляется на мой iPhone по электронной почте.Проблема в том, что я получаю следующее сообщение: «Это сообщение не может быть отображено из-за способа его форматирования. Попросите отправителя отправить его еще раз, используя другой формат или программу электронной почты. Multipart / mixed"

Isэто как-то связано с типом содержимого электронной почты и как это исправить в моем PHP-коде.

$headers = "MIME-Version: 1.0\r\n";
$headers .= "From:".$from_email."\r\n";
$headers .= "From:".$from_email."\r\n";
$headers .= "Reply-To: ".$sender_email."" . "\r\n"; 
$headers .= "Content-Type: multipart/mixed; boundary = $boundary\r\n\r\n";
$body = "--$boundary\r\n";
$body .= "Content-Type: text/plain; charset=ISO-8859-1\r\n";
$body .= "Content-Transfer-Encoding: base64\r\n\r\n";
$body .= chunk_split(base64_encode($message_body));
$sentMail = mail($recipient_email, $subject, $body, $headers);

1 Ответ

0 голосов
/ 28 февраля 2019

Вы указываете Content-Type в качестве строки заголовка.

Предполагая, что вы добавляете свои заголовки со стандартной нотацией точек, вы должны использовать:

$headers .= "Content-Type: multipart/mixed";

И позже это станетчетвертый параметр вашей mail() функции:

mail($address, $subject, $message, $headers);

Вот базовый пример:

$address = 'sample@sample.com';
$subject = 'Subject';
$message = 'Message';
$headers = "From: My Name<something@something.com>\n";
$headers .= "Reply-To: something@something.com \n";
$headers .= "Content-Type: multipart/mixed";

mail($address, $subject, $message, $headers);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...