Intereting Posts
Как получить граф или количество строк в результате набора в PHP с использованием ODBC-соединения? Добавить количество дней до даты Как определить, когда пользователь успешно завершил загрузку файла в php Лучший способ отправить анонимную электронную почту, например, Craigslist Почему класс корзины codeigniter не позволяет использовать какой-либо специальный символ в имени? Как показать предварительный просмотр изображения с помощью jquery перед формой submit в div Какова рекомендуемая практика для API-интерфейса PayPal NVP с остановкой и возвратом подписки? Невозможно загрузить видео в учетную запись пользователя facebook с помощью Graph API Найти все .php-файлы в папке рекурсивно Перезагрузить страницу с изменением Javascript после изменения базы данных Установка Xdebug для PHP на Ubuntu с помощью XAMPP Перенаправить на указанный URL-адрес при завершении PHP-скрипта? CakePHP 2.1 Ошибки проверки Ajax Не удалось запустить приложение «Google-приложение» Сохранить кнопку внутри загрузочного модала 3

PHP html формат не работает

Используя php, и с помощью этого кода я получаю электронное письмо как обычный текст, я что-то пропустил? так как мне нужно отправить форматированную электронную почту, которая могла бы содержать ссылки, например.

$to = "receiver@test.com"; $subject = "Password Recovery"; $body = ' <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>Birthday Reminders for August</title> </head> <body> <p>Here are the birthdays upcoming in August!</p> <table> <tr> <th>Person</th><th>Day</th><th>Month</th><th>Year</th> </tr> <tr> <td>Joe</td><td>3rd</td><td>August</td><td>1970</td> </tr> <tr> <td>Sally</td><td>17th</td><td>August</td><td>1973</td> </tr> </table> </body> </html> '; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers = "From: info@test.net\r\n"."X-Mailer: php"; if (mail($to, $subject, $body, $headers)) echo "Password recovery instructions been sent to your email<br>"; 

Посмотрите на этот пример, этого достаточно, чтобы отправить почту в php:

 <?php //change this to your email. $to = "abc@gmail.com"; $from = "Example@example.com"; $subject = "Hello! This is HTML email"; //begin of HTML message $message =" <html> <body> <p style=\"text-align:center;height:100px;background-color:#abc;border:1px solid #456;border-radius:3px;padding:10px;\"> <b>I am receiving HTML email</b> <br/><br/><br/><a style=\"text-decoration:none;color:#246;\" href=\"www.example.com\">example</a> </p> <br/><br/>Now you Can send HTML Email </body> </html>"; //end of message $headers = "From: $from\r\n"; $headers .= "Content-type: text/html\r\n"; //options to send to cc+bcc //$headers .= "Cc: [email]maa@pis.cXom[/email]"; //$headers .= "Bcc: [email]email@maaking.cXom[/email]"; // now lets send the email. mail($to, $subject, $message, $headers); echo "Message has been sent....!"; ?> 

Вы переустановили заголовки:

 $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers = "From: info@test.net\r\n"."X-Mailer: php"; 

Вам не хватает точки в последней строке, которая переписывает предыдущие две:

 $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= "From: info@test.net\r\n"."X-Mailer: php"; 

Я нашел ту же проблему с конкретным почтовым сервером, в моем случае решением было установить «\ n» вместо «\ r \ n» в качестве конца строки для заголовков.