php html邮件无法在cpanel服务器上运行

时间:2017-10-09 11:21:36

标签: php html email cpanel

我有一个代码可以在cpanel上发送带有php的html邮件,但不会发送任何错误。我已经测试过纯文本邮件,但工作正常,但是一旦我添加了如下所示的标题,它就无法正常工作。

//send html mail
ini_set('sendmail_from', 'info@toludimaokojie.com');
            $headers = "From: info@toludimaokojie.com\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("olaegbesamuel@gmail.com", "MBQ TEST ANALYSIS", $html, $headers);

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

1 个答案:

答案 0 :(得分:0)

您已使用所有必需的电子邮件参数定义了$ header,但查看您的$header变量,有两件事需要更改,

1)您已经使用了$ header和$ headers,因此请使用其中任何一个并将它们附加到一个变量中。 2)$ header变量的第二行缺少.以附加前面的标题值,因此更正后的代码应为:

         $headers = "From: info@toludimaokojie.com\r\n"."X-Mailer: php";
         $headers .= "From: $from\r\n"; 
         $headers .= "Content-type: text/html\r\n";

由于您在第二行中错过了.运算符,它将删除From标题,因此它不会发送电子邮件。 更改这些行后尝试。