簡體   English   中英

使用HTML發送電子郵件

[英]Send email with HTML

我可以從服務器發送電子郵件了。 我的問題是我的電子郵件沒有呈現為HTML。 當我收到電子郵件時,這就是我得到的:

<table style='text-align: center;'>
            <td><b>Park</b></td>
            <td style='padding: 0px 20px 0px 20px;'><b>Ratio</b></td>
            <td style='padding: 0px 20px 0px 20px;'><b>% Complete</b></td>
            <tr style='background-color: rgb(207, 226, 243)'>
                    <td>Arbordale Acres</td>
                    <td style='padding: 0px 20px 0px 20px;'>353 / 928</td>
                    <td style='padding: 0px 20px 0px 20px;'>38.04%</td>
            </tr>

            <tr style='background-color: rgb(208, 242, 208)'>
                    <td>Brentwood</td>
                    <td style='padding: 0px 20px 0px 20px;'>106 / 1036</td>
                    <td style='padding: 0px 20px 0px 20px;'>10.23%</td>
            </tr>

            <tr style='background-color: rgb(207, 226, 243)'>
                    <td>Carefree</td>
                    <td style='padding: 0px 20px 0px 20px;'>100 / 619</td>
                    <td style='padding: 0px 20px 0px 20px;'>16.16%</td>
            </tr>

有更多的html出現,但是您有了基本的想法。 我了解到某些CSS無法正常工作,但我想像至少會有某種類型的嘗試以gmail呈現HTML,然后再接收純文本。

先感謝您!

您需要在標頭中設置MIME類型,然后再將電子郵件發送為HTML的內容類型。 這告訴電子郵件客戶端將電子郵件正文解釋為HTML。

$headers .= "Content-Type: text/html; charset=UTF-8\r\n";

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

嘗試使用此PHP代碼。

<?php
    $body_mail = "<h1>Test Rendering HTML Email</h1>\r\n";
    $headers = "From: mail@yourdomain.com\r\n";
    $headers .= "Reply-to: me@yahoo.com.sg\r\n";
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=UTF-8\r\n";
    $mail_sent = @mail("you@mail.com", "Title TEST", $body_mail, $headers);
 echo $mail_sent ? "Success" : " Failed!";
?>

它將呈現您的HTML電子郵件。 注意:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM