为了账号安全,请及时绑定邮箱和手机立即绑定

从PHP发送HTML电子邮件

从PHP发送HTML电子邮件

慕妹3146593 2019-09-03 19:19:09
我正在尝试从PHP发送一个简单的HTML电子邮件。以下代码只会导致GMail中的空白电子邮件。它还有一个名为'noname'的空附件,这根本不是我想要的; 虽然这可能仅仅是它不起作用的症状。我使用的代码是:<?php//define the receiver of the email$to = 'morrillkevin@gmail.com';//define the subject of the email$subject = 'Test HTML email';//create a boundary string. It must be unique//so we use the MD5 algorithm to generate a random hash$random_hash = md5(date('r', time()));//define the headers we want passed. Note that they are separated with \r\n$headers = "From: webmaster@example.com\r\nReply-To: webmaster@example.com";//add boundary string and mime type specification$headers .= "\r\nContent-Type: multipart/alternative; boundary=\"PHP-alt-".$random_hash."\"";//define the body of the message.ob_start(); //Turn on output buffering?>--PHP-alt-<?php echo $random_hash; ?> MIME-Version: 1.0Content-Type: text/plain; charset="iso-8859-1"Content-Transfer-Encoding: 7bitHello World!!! This is simple text email message. --PHP-alt-<?php echo $random_hash; ?> MIME-Version: 1.0Content-Type: text/html; charset="iso-8859-1"Content-Transfer-Encoding: 7bit<h2>Hello World!</h2><p>This is something with <b>HTML</b>formatting.</p>--PHP-alt-<?php echo $random_hash; ?>--<?//copy current buffer contents into $message variable and delete current output buffer$message = ob_get_clean();//send the email$mail_sent = @mail( $to, $subject, $message, $headers );//if the message is sent successfully print "Mail sent". Otherwise print "Mail failed" echo $mail_sent ? "Mail sent" : "Mail failed";
查看完整描述

3 回答

?
30秒到达战场

TA贡献1828条经验 获得超6个赞

如果可能,请使用PHPMailer类。它将大大简化您的工作。


查看完整回答
反对 回复 2019-09-03
  • 3 回答
  • 0 关注
  • 639 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信