Я использую очень простую PHP-функцию для создания электронных писем HTML/plain-text. Он отлично работал в gmail и многих других клиентах, которые я видел.Очень простой HTML/текстовый текст, который не отображается вообще в microsoft live.com
Как выясняется, @ live.com-аккаунты вообще не видят содержимое электронной почты.
Вот соответствующий код:
$random_hash = md5(date('r', time()));
//define the headers we want passed. Note that they are separated with \r\n
$headers = "From: [email protected]\r\nReply-To: [email protected]\r\n";
$headers .= "MIME-Version: 1.0\r\n";
//add boundary string and mime type specification
$headers .= "Content-Type: multipart/alternative; boundary=$random_hash\r\n";
$headers .= "Content-Transfer-Encoding: 7bit\r\n";
//define the body of the message.
$message = "This is a MIME encoded message.\r\n\r\n" .
"--$random_hash\r\n" .
"Content-Type: text/plain; charset=utf-8\r\n" .
//"Content-Transfer-Encoding: 7bit\r\n" .
"\r\nthis is plain text.\r\n\r\n" .
"--$random_hash\r\n" .
"Content-Type: text/html; charset=utf-8\r\n" .
//"Content-Transfer-Encoding: 7bit\r\n" .
"\r\n<html><body>this is wonderful <b>HTML</b> text.</body></html>" .
"\r\n\r\n--$random_hash--\r\n";
mail('[email protected]', 'This is u umlaut: ü', $message, $headers);
Если бы я только отправить либо HTML или обычный текст, он будет отображаться правильно.
Любые идеи?
Я не хочу использовать дополнительную библиотеку. Все, что мне нужно для HTML, это ссылки, в основном. Ответы на PHP Multi-Part Text/HTML showing blank не помогают мне.
И кстати: и- умляут отображается неправильно в списке электронной почты в почтовом ящике live.com но отображается правильно, когда я открываю почту в live.com ...
посмотрите на http://phpmailer.worxware.com/, он работает очень хорошо и имеет хорошую встроенную поддержку multipart – ITroubs
Большое спасибо за подсказку, ITroubs! Однако: «Я не хочу использовать дополнительную библиотеку» - мне нужен только HTML, чтобы иметь красивые ссылки, потому что я отправляю ссылки подтверждения с длинными произвольными строками, которые выглядят уродливо в виде обычного текста. Я серьезно не хочу вводить зависимость от какой-то другой базы кода только для этого. –
Это действительно стоит попробовать. Такие библиотеки не создаются без какой-либо причины. В этих библиотеках много знаний относительно обработки особых случаев и/или особых проблем. Вот почему я упомянул об этом. – ITroubs