我正在创建一个注册表单,当您提交时,会向您发送一封确认电子邮件。我希望我的电子邮件不仅仅是文字。
我不知道如何做到这一点或从哪里开始 我试图搜索这个,我没有正确的关键字,因为什么都没有出现。 我试图添加html标签和样式,但它只是以原始文本形式出现。
帮助?
$to = 'user@gmail.com';
$subject = '2014 Comfirmation';
$message = "<h1>Test Header<h1>\r\n
<img src=\"http://www.image.com/_newSite/img/logo.jpg\"/>
<p style='border:solid thin red'>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc malesuada dui a dictum blandit. Suspendisse commodo tincidunt diam. Duis orci tellus, imperdiet et vestibulum vitae, aliquet sit amet velit. Aenean a massa eu neque interdum viverra. Donec interdum arcu neque, ac egestas lectus mattis a. Duis nec dictum mauris. In eget facilisis nibh. Interdum et malesuada fames ac ante ipsum primis in faucibus. Aenean ac leo ut mauris aliquet gravida eget eu magna. Mauris ullamcorper sagittis risus, eu molestie mi iaculis eu. Proin ut elementum risus. Vivamus rhoncus ipsum elit, in ultrices quam elementum et.</p>
Line 2\r\n
Line 3
";
$headers = 'From: from@gmail.com' . "\r\n" .
'Reply-To: from@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70, "\r\n");
// Send
@mail($to, $subject, $message, $headers);
答案 0 :(得分:0)
您需要在电子邮件标题中添加正确的Content-type
:
$headers = 'MIME-Version: 1.0' . "\r\n" .
'Content-type: text/html; charset=iso-8859-1' . "\r\n" .
'Reply-To: fake@gmail.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
默认情况下,邮件客户端会将邮件视为文本,除非该邮件明确指定应将其视为HTML。现在,使HTML变得漂亮是完全不同的事情。另请注意,HTML消息更有可能被过滤器视为垃圾邮件。作为一般建议,请不要过分使用造型。少即是多。
答案 1 :(得分:0)
我个人建议使用PHPMailer这样的库来处理HTML电子邮件,因为如果你还想做一个电子邮件附件,那么祝你好运PHP中的原生mail();
旁注:
HTML电子邮件非常难以理解,因为雅虎和GMAIL等各种邮件服务都有解析算法来删除潜在的恶意代码。
<强> GMAIL 强>
padding-left:10px;
<强>雅虎强>
padding-left:10px;
<强>观强>