2017-10-09 58 views
0

我有一个代码发送与PHP上的cPanel的HTML邮件,但不发送没有任何错误。我测试过纯文本邮件,并且工作正常,但是一旦我添加如下所示的标头,它就不起作用。PHP的HTML邮件不能在cPanel服务器上工作

//send html mail 
ini_set('sendmail_from', '[email protected]'); 
      $headers = "From: [email protected]\r\n"."X-Mailer: php"; 
      $headers .= "Content-type: text/html\r\n"; 
     $html = '<html> 
    <body> 
    <h2>Result Analysis for Test With Reference Number:'.$reference.'</h2> 
    <br/> 
    <p><b>Personality: '.$personality_mail.'</b></p> 
    <br/> 
    <p><b>MBQ Score: '.$resultTotal.'</b></p> 
    <br/> 
    <ul>'.$analyseData.'</ul> 
    <pre>Mail Sent on '.date("l, F Y H:i:sa").'</pre> 
    </body> 
    </html>';       
    mail("[email protected]", "MBQ TEST ANALYSIS", $html, $headers); 

这不起作用。请帮助,我想我在这里做的一切都正确。我没有HTML已经测试并确认mail工作

+0

_...但不发送没有任何错误... _什么错误? –

+0

它不会给出任何错误,为什么它不是发送 – goodhand

+0

仍然没有回答这个... – goodhand

回答

0

您已经定义了$头与所有重要的电子邮件参数,但看你的$header变量,有需要改变两两件事,

1)已使用$ header和$ headers都使用它们中的任何一个,并将它们追加到一个变量中。 2)你的$标题变量的第二行缺少.附加上一个头的值,因此修正后的代码应该是:

  $headers = "From: [email protected]\r\n"."X-Mailer: php"; 
     $headers .= "From: $from\r\n"; 
     $headers .= "Content-type: text/html\r\n"; 

当你错过了在第2行.运营商,它会删除From头等等它不会发送电子邮件。 更改这些行后尝试。

+0

哦...标题/标题是一个错误,我已纠正,邮件仍然不会发送 – goodhand

+0

你想从'localhost'发送电子邮件吗? –

+0

当然不是。我在我的问题中提到了cpanel。它绝对在主机上。邮件功能在邮件函数参数 – goodhand

相关问题