PHP HTML电子邮件

时间:2013-11-12 16:37:18

标签: php html email

我正在尝试创建一个预订系统,当用户预订并通过电子邮件向所需人员发送电子邮件时,大部分都可以正常运行,但我遇到了电子邮件系统的问题。

电子邮件只发送给$,而不是发送给CC:。它也是由托管服务器发送的,不显示FROM:。我读了几页,说标题的顺序很重要,但我似乎无法找到正确的顺序。

这是代码

 $to = 'crnflying@gmail.com';

$subject = $this->rank . ' ' . $this->first_name . ' ' . $this->last_name;

$message = '
<html>
<body>
<img style="float: right;" src="http://www.emuas.co.uk/templates/emuas-public/images/emuas-title.png" alt="emuas-logo">
<h2>EMUAS Flying Booking for ' . $this->rank . ' ' . $this->first_name . ' ' . $this->last_name . '</h2>
<table style="border-color: #666;" cellpadding="10">
<tr>
<td><strong>Start Date:</strong> </td>
<td>' . $this->flying_start_date . '</td>
</tr>
<tr>
<td><strong>End Date:</strong> </td>
<td>' . $this->flying_end_date . '</td>
</tr>
<tr>
<td><strong>Comments:</strong> </td>
<td>' . $this->flying_comments . '</td>
</tr>
</table>
</body>
</html>'

$headers = 'MIME-Version: 1.0' . '\r\n';
$headers .= 'Content-type:text/html;charset=iso-8859-1' . '\r\n';
$headers .= 'From: <' . $this->email . '>' . '\r\n';
$headers .= 'Reply-To: ' . $this->email . '\r\n';
$headers .= 'CC: ' . $this->email . '\r\n';

if (mail($to, $subject, $message, $headers)) {
echo 'Your message has been sent.';                                 }
else {
echo 'There was a problem sending the email.';
}

非常感谢任何帮助。 拜伦

1 个答案:

答案 0 :(得分:0)

要扩展ThiefMaster或Michael所说的内容(在评论中),您应该尝试使用Swiftmailer或其他专门用于生成电子邮件的库。它比“mail();”更可靠,特别是如果您想要编写/使用/发送对您的客户重要的信息。

查看http://swiftmailer.org/

根本不是一个很难改变。基本上下载库,将其包含在您的应用程序中,删除您的“mail();”代码并插入Swiftmailer使用的那个(或者你需要的那个,它们有几个选项)就是这样。

您需要使用您的电子邮件帐户登录信息/端口/等来发送可靠信息。您的应用程序将与从您自己的网络邮件应用程序发送电子邮件一样可靠。

祝你好运