У меня есть этот код, чтобы отправить по электронной почте с помощью PHP:HTML электронной почты посылает в виде обычного текста с PHP
// Prepare email.
$headers = "From: Mi9 Vault <[email protected]>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=ISO-8859-1";
$msg = file_get_contents($_SERVER['DOCUMENT_ROOT'] . '/edm/confirmation.html');
$msg = str_replace('{first_name}', $contact["First Name"], $msg);
// Send email
mail($contact["Email Address"], "Your Mi9 Registration is Confirmed", $msg, $headers);
confirmation.html
является HTML электронной почты, который мы создали.
У меня никогда не было проблем с вышеуказанным PHP-кодом для отправки писем раньше, однако все, что я могу вернуть, - это письмо, содержащее все HTML, а не фактическое письмо в формате HTML.
В основном я получаю по электронной почте с этим как содержание:
MIME-Version: 1.0
Content-type: text/html; charset=ISO-8859-1
Message-Id: <[email protected]>
Date: Wed, 18 Apr 2012 01:03:25 -0700 (PDT)
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>
.....
У меня есть один и тот же PHP код на другом сайте с тем же хозяином, и он прекрасно работает ...
У меня была эта проблема раньше, и решил ее, играя с размещением '\ r \ n'.Возможно, вы захотите попробовать решение Данте. –
Фактически встроенный HTML работает только с очень слабым (несоответствующим) пользовательским агентом. Вы можете получить это, чтобы отображать, как вы хотите, в своем почтовом клиенте, когда вы исправили проблему с новой строкой в ehaders, но вы должны использовать 7-битную кодировку передачи, а html должен быть помечен как встроенный контент mime. – symcbean