2013-07-18 50 views
1

我已经通过这个线程在这里工作: Sending HTML email from PHP格式HTML与PHP邮件

在过去的5小时,由于某种原因,不能让我的PHP生成HTML的邮件。

这是我有:

// Construct Mail: 
$message = "<html><body>Some text<br />New line<p>New para</p></body></html>"; 
// Send Mail: 
$to   = "$UserMail"; 
$subject  = "[Skills Exchange Network] Event Created"; 
$header  = 'MIME-Version: 1.0' . "\r\n"; 
$header  .= 'Content-Type: text/html; charset=ISO-8859-1' . "\r\n"; 
$headers .= 'From: Skills Exchange Network <Mail Address is here>' . "\r\n"; 
$headers .= 'Cc: Skills Exchange Network <Mail Address is here>' . "\r\n"; 
$SendMail = mail($to,$subject,$message,$headers); 

这是我收到:

从技能交换网RNCC:技能交换网络RN

我真的不知所措...

下面是我现在拥有的:

// Construct Mail: 
$message = "<html><body>Some text<br />New line<p>New para</p></body></html>"; 

// Send Mail: 
$to   = "$UserMail"; 
$subject  = "[Skills Exchange Network] Event Created"; 

// To send HTML mail, the Content-type header must be set 
$headers  = "MIME-Version: 1.0" . "\r\n"; 
$headers .= "Content-Type: text/html; charset=ISO-8859-1" . "\r\n"; 

// Additional Headers: 
$headers .= "From: Skills Exchange Network <[email protected]>" . "\r\n"; 
$headers .= "Cc: Skills Exchange Network <[email protected]>" . "\r\n"; 
$SendMail = mail($to, $subject, $message, $headers); 

这里就是我得到:

Subject: [Skills Exchange Network] Event Created 
MIME-Version: 1.0rnContent-Type: text/html; charset=ISO-8859-1rnFrom: Skills Exchange  Network <[email protected]>rnCc: Skills Exchange Network <[email protected]>rn 
Message-Id: <[email protected]> 
From: [email protected] 
Date: Thu, 18 Jul 2013 10:13:08 -0500 
X-Antivirus: AVG for E-mail 2013.0.3349 [3204/6500] 
X-AVG-ID: ID58DD9571-36429B43 

<html><body>Some text<br />New line<p>New para</p></body></html> 
+0

最好是使用表格进行电子邮件标记 – DarkBee

+0

这是您收到的电子邮件正文还是这个主题? –

+0

有两件事情是错误的:标题和正文。我收到邮件,但标题格式不正确,HTML以纯文本格式显示。可能是因为标题错误。 – Harlequin

回答

0

也许如果你把 'S' 因此在$头结束了吗?

+0

现在纠正通过仍然得到错误形成的标题和HTML。 – Harlequin

1

您正在将$headers命名为$header,因此您的内容类型未嵌入。

$headers  = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-Type: text/html; charset=ISO-8859-1' . "\r\n"; 
$headers .= 'From: Skills Exchange Network <Mail Address is here>' . "\r\n"; 
$headers .= 'Cc: Skills Exchange Network <Mail Address is here>' . "\r\n"; 
+0

感谢Yogesh 我实现了你建议的内容: 我现在仍然在头文件中出错。 MIME-Version:1.0rnContent-Type:text/html; charset = ISO-8859-1rnFrom:技能交流网络<[email protected]> rnCc:技能交流网络<[email protected]> rn 很明显,我仍然有一个问题。 – Harlequin

+0

事实上,它并没有做两件事: 拆分头文件并格式化HTML。 我收到的邮件正常,但未正确格式化或正确加载标题。 – Harlequin

+0

这里是我现在有的 //构造邮件: \t $ message =“HTML code here”; //发送邮件: \t $至\t \t \t =“$ UserMail”; \t $ subject \t \t =“[技能交流网络]活动创建”; //要发送HTML邮件,必须设置Content-type标头 \t $ headers =“MIME-Version:1.0”。为 “\ r \ n” 个; \t $ headers。=“Content-Type:text/html; charset = ISO-8859-1”。为 “\ r \ n” 个; // Additional Headers: \t $ headers。=“From:Skills Exchange Network <[email protected]>”。为 “\ r \ n” 个; \t $ headers。=“抄送:技能交流网络<[email protected]>”。为 “\ r \ n” 个; \t $ SendMail \t =邮件($ to,$ subject,$ message,$ headers); – Harlequin

0

PHPMailer可能是一个有用的解决方案。

+0

我一直在使用它,甚至使用了我写的上一页中的代码,可以很好地工作,但会得到这些错误。 – Harlequin