0

マルチパート/代替メールを送信しようとしているので、テキストバージョンとHTMLバージョンを1つのメールで送信します。私の問題は、メールに次のプレーンテキストしか含まれていないことです。

メールはこちら:

Multipart Message coming up

--b4d67c224c82d8fad38c0bcef1a0bf97Content-Type: text/plain; charset=iso-8859-1Content-Transfer-Encoding: 7bitYou really ought remember the birthdays--b4d67c224c82d8fad38c0bcef1a0bf97Content-Type: text/html; charset=iso-8859-1Content-Transfer-Encoding: 7bit<html>
        <head>
          <title>Birthday Reminders for August</title>
        </head>
        <body>
          <p>Here are the birthdays upcoming in August!</p>
        </body>
        </html>
        --b4d67c224c82d8fad38c0bcef1a0bf97--

コードを以下に示します。

<?

//this is a path to PHP mailer class you have dowloaded
$to      = "mail@mydomain.com";

$boundary = md5(date('U'));

$subject = "My Subject";

$headers = "From: mail@mydomain.com" . "\r\n".
           "X-Mailer: PHP/".phpversion() ."\r\n".
           "MIME-Version: 1.0" . "\r\n".
           "Content-Type: multipart/alternative; boundary=$boundary". "\r\n".
           "Content-Transfer-Encoding: 7bit". "\r\n";

$text = "You really ought remember the birthdays";     
$html = '<html>
    <head>
      <title>Birthday Reminders for August</title>
    </head>
    <body>
      <p>Here are the birthdays upcoming in August!</p>
    </body>
    </html>
    ';

$message = "Multipart Message coming up" . "\r\n\r\n".
       "--".$boundary.
       "Content-Type: text/plain; charset=iso-8859-1" .
       "Content-Transfer-Encoding: 7bit".
       $text. 
       "--".$boundary. 
       "Content-Type: text/html; charset=iso-8859-1". 
       "Content-Transfer-Encoding: 7bit". 
       $html.
       "--".$boundary."--";

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

?>
4

1 に答える 1

0

「\n」で境界線とコンテンツ行を終了していません

mime仕様によると必須

于 2013-03-03T18:30:40.390 に答える