2013-05-09 4 views
0

Я отправляю электронное письмо с помощью кода php ниже, который отправляет шаблон электронной почты на адрес электронной почты пользователей. Однако электронная почта отправляется со всеми HTML-тегами, которые все еще видны и не действуют.Форматирование HTML с помощью PHP Mail()

$fh = fopen('templates/customer.eml','r'); 

     $emailContents = fread($fh, filesize('templates/customer.eml')); 
     $emailContents = str_replace(":name:", $person->first . " " . $person->last, $emailContents); 
     $emailContents = str_replace(":meeting_name:", $meeting->name, $emailContents); 
     $emailContents = str_replace(":chair:", $chair->first . " " . $chair->last, $emailContents); 

     fclose($fh); 

     $header = "FROM: [email protected]\r\n"; 
     $header = "MIME-Version: 1.0\r\n"; 
     $header.="Content-type: text/html; charset: utf8\r\n"; 
     mail($person->email , "Meeting Request", $emailContents, "FROM: [email protected]"); 

И ниже файл шаблона электронной почты, который я использую для содержания:

<html> 
    <head> 
     <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
    </head> 
    <body> 
     <p> 
      Dear :name:,<br /> 
      You have been invited to <em>:meeting_name:</em> chaired by :chair:. 
     </p> 

     <p> 
      Main text of the email will go here<sup>*</sup>. 
     </p> 
     <p> 
      Thankfully 
     </p> 
     <p> 
      User 
     </p> 
    </body> 
</html> 
+0

Вы не читаете переменную $ заголовка. Вы только добавляете к нему. – brunoais

ответ

1

Вы не передавая заголовки в функции почты. Попробуйте:

$header = "FROM: [email protected]\r\n"; 
$header .= "MIME-Version: 1.0\r\n"; 
$header .="Content-type: text/html; charset: utf8\r\n"; 
mail($person->email , "Meeting Request", $emailContents, $header); 

Попробуйте эти заголовки вместо

$header = 'MIME-Version: 1.0' . "\r\n"; 
$header .= 'Content-type: text/html; charset=utf8' . "\r\n"; 
$header .= 'From: [email protected]' . "\r\n"; 
mail($person->email , "Meeting Request", $emailContents, $header); 
+0

Извините, что моя ошибка. Я обновил заголовок $ в функции почты. Однако я сейчас не получаю и письмо? – Krisso123

+0

Спасибо за публикацию этого кода, это сработало :) Очень ценю вашу помощь. благодаря – Krisso123

Смежные вопросы