如何在php中创建html邮件正文?

时间:2015-02-23 10:12:31

标签: php html email

我正在尝试为我的邮件正文编写代码。我有一个名为mailfunction.php的php文件。

在该文件中,我创建了一个变量,其中包含我的html代码,如下所示

 $message_body ="<html><body>"
."<table class='tg' style='border-style: dotted;'>"
          ."<tr><td class='tg-3zav'>Civilité</td><td class='tg-3zav'>" . strip_tags($titre) . "</td></tr>"
          ."<tr><td class='tg-3zav'>Prénom</td><td class='tg-3zav'>" . strip_tags($prenom) . "</td></tr>"
          ."<tr><td class='tg-3zav'>Nom</td><td class='tg-3zav'>" . strip_tags($nom) . "</td></tr>"
          . "</table></body></html>";

但不幸的是,收到邮件的邮件并没有对htlm标签进行编码。我收到了一些包含html标签的文字,这些标签未编码如下

<table class="tg" style="border-style: dotted;">
  <tr>
    <th class="tg-3zav">Civilité</th>
    <th class="tg-3zav">M</th>
  </tr>
  <tr>
    <td class="tg-3zav">Nom</td>
    <td class="tg-3zav">Frank</td>
  </tr>
  <tr>
    <td class="tg-3zav">Prénom</td>
    <td class="tg-3zav">Betrix</td>
  </tr>
</table>

有什么想法在php文件中写这个html代码吗?

2 个答案:

答案 0 :(得分:3)

您需要使用邮件功能中的标题

<?php
$to = "somebody@example.com, somebodyelse@example.com";
$subject = "HTML email";

$message ="<html><body>"
."<table class='tg' style='border-style: dotted;'>"
          ."<tr><td class='tg-3zav'>Civilité</td><td class='tg-3zav'>" . strip_tags($titre) . "</td></tr>"
          ."<tr><td class='tg-3zav'>Prénom</td><td class='tg-3zav'>" . strip_tags($prenom) . "</td></tr>"
          ."<tr><td class='tg-3zav'>Nom</td><td class='tg-3zav'>" . strip_tags($nom) . "</td></tr>"
          . "</table></body></html>";

// Always set content-type when sending HTML email
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";

// More headers
$headers .= 'From: <webmaster@example.com>' . "\r\n";
$headers .= 'Cc: myboss@example.com' . "\r\n";

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

headers = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=UTF-8' . "\r\n";

答案 1 :(得分:0)

非常感谢你。在这里,我发布了更正的源代码

$headers .= 'From: ADMIN SERVER' . "\r\n";
$headers .= 'Cc: cc-cc@admin-server.org' . "\r\n";
$headers = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=UTF-8' . "\r\n";
$message_body ="<html><body>"
                ."<style type='text/css'>"
                ."tg {border-collapse:collapse;border-spacing:0;}"
                ."</style>"
                ."<table class='tg' style='border-style: dotted;'>"
                ."<tr><td class='tg-3zav'>Civilité :</td><td class='tg-3zav'>" . strip_tags($titre) . "</td></tr>"
                ."<tr><td class='tg-3zav'>Prénom : </td><td class='tg-3zav'>" . strip_tags($prenom) . "</td></tr>"
                ."<tr><td class='tg-3zav'>Nom : </td><td class='tg-3zav'>" . strip_tags($nom) . "</td></tr>"
                ."</table></body></html>";