Как отправить письмо в формате HTML с использованием PHP - PullRequest
7 голосов
/ 19 апреля 2011

Эй, ребята, пытаюсь отправить html письмо через mail (), однако gmail просто отображает письмо в виде обычного текста, без разметки, например:

mail("blah@blah.com", "subject", "<i>Italic Text</i>");

просто появляется как

<i>Italic Text</i>

Есть идеи?

Ответы [ 5 ]

15 голосов
/ 19 апреля 2011

Вы должны указать, что содержимое письма является HTML:

mail("blah@blah.com", "subject", "<i>Italic Text</i>", "Content-type: text/html; charset=iso-8859-1");
7 голосов
/ 19 апреля 2011

См. Пример 4 на этой странице:

http://php.net/manual/en/function.mail.php

3 голосов
/ 19 апреля 2011

Я считаю, что вы должны установить content-type в text/html в своих заголовках.

что-то вроде строки "Content-type:text/html"

Куда "вставить" этот заголовок? Взгляните на ссылку функции на http://php.net/manual/en/function.mail.php

3 голосов
/ 19 апреля 2011

Вам необходимо иметь правильно сформированный HTML-документ:

$msg = "<html><head></head><body><i>Italic Text</i></body></html>";

Редактировать:

И отправлять заголовки:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

mail("blah@blah.com", $msg, $headers);
1 голос
/ 19 апреля 2011

Для того, чтобы он был правильно интерпретирован, вы также должны установить заголовки в письме, особенно:

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

Вы также должны установить другие обычные заголовки.Наконец, сообщение может быть отправлено следующим образом:

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

Для получения дополнительной информации вы должны обратиться к php странице почты .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...