PHP:mail()函数不适用于长html消息

时间:2010-09-30 17:02:17

标签: php html email

这是我的代码:

    $message = '
    <html>
    <body>
    <table>
    <tr>
    <td>
    <img src=http://www.mdrnfx.com/mail_ust.jpg>
    </td>
    </tr>
    <tr>
    <td>
    <br>
    <div align=justify>
    <p>
    <strong>Bugün  demonuzun 2. günü…</strong>
    <br />Öncelikle  bizi tercih ettiğiniz için teşekkür ederiz.
    <br />Forex  piyasasını tanıma ve öğrenme aşamasında mısınız?
    <br />Platformun  kullanımı konusunda desteğe mi ihtiyaç duyuyorsunuz?
    <br />Dilediğiniz  saat için uzaktan bağlantıya geçerek, size yardımcı olmaktan memnuniyet  duyacağımızı bilmenizi isterim.
    <br />Bu  yönde bir talebiniz var ise lütfen aşağıdaki butonu tıklayın, dilediğiniz zaman  sizi arayalım.
    <br />Evet  – hayır
    <br />Evet  ise;
    <br />Sizinle  ne zaman iletişime geçelim : …………………..
    </p>
    <p>
    Aklınıza  takılan her konuda dilediğiniz; zaman bizimle temasa geçebilirsiniz…
    </p>
    <p>
    Saygılarımla
    <br />
    <b>' . $_SESSION['adminName'] . '</b>
    <br />Tel:<b> 0216 545 48 44</b>
    <br />Msn:<b>' . $_SESSION['adminMsn'] . '</b>
    </p>
    Skype: <b>' . $_SESSION['adminSkype'] . '</b>
    </div>
    <br>
    </td>
    </tr>
    <tr>
    <td>
    <img src=http://www.mdrnfx.com/mail_alt.jpg>
    </td>
    </tr>
    </table>
    </body>
    </html>
    ';  
    $subject = "ModernFx - 2. Demo Gününüz";
    $name = "ModernFx";
    $gonderen = $_SESSION['adminMail'];
    $mailler = $_POST['mailler'];
    $headers  = 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
    $email = explode("\n", $mailler);
    unset($email[sizeof($email)-1]);;
    //$headers .= "From: ".$name." <".$gonderen.">";
    echo $message;
    echo $headers;
    $i = 0;
    $count = 1;
    while( $i <= (sizeof($email)-1) )
    {
          if( mail($email[$i], $subject, $message, $headers) )
          {
            echo " $count > <b>".$email[$i]."</b> <font color=green>Adresine Teslim Etti...</font><br><hr>";
            $count++;
          }
          else 
          echo " <b>".$email[$i]."</b> <font color=red>Hata gitmedi</font><br><hr>";
          $i++;
    }

它不适用于行//$headers .= "From: ".$name." <".$gonderen.">";。 错误报告和显示错误在php.ini中打开,并设置为-1。

任何帮助?

3 个答案:

答案 0 :(得分:1)

更好,使用MIME PEAR并为自己节省很多麻烦和时间......

http://pear.php.net/package/Mail_Mime/redirected

答案 1 :(得分:0)

这是因为charset和dreamweaver。我检查了裸文件,然后人物搞砸了。所以,问题是dreamweaver,检查编码,它说西欧.. Na a,应该是ISO-8859-9或UTF-8 ..所以,我选择了UTF-8并重新输入,你去了! / p>

答案 2 :(得分:0)

这是我的代码我总是用它来发送电子邮件,你可以尝试一下

<?

$sendTo   = $uemail;
$subject  = "Email Subject";
$headers  = "From: Name<noreply@name.com>\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$message  = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            <html xmlns="http://www.w3.org/1999/xhtml">
            <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            </head>
            <body>

            </body>
            </html>';

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

?>