【问题标题】:HTML e-mail with PHP带有 PHP 的 HTML 电子邮件
【发布时间】:2011-11-04 23:12:31
【问题描述】:

我有一个可以轻松输出消息 ($message) 的联系表单,但我添加了其他变量,例如。日期、派对等。这些显示正确,但我尝试添加 HTML 代码以使输出更有条理,但它所做的只是打印 HTML 代码!

如果可以,请提供帮助,请参阅下面的代码。需要工作的线路是:

mail( "theresa.pert@me.com", "VoH Online Enquiry",
   "Name: $name.</p>, Telephone Number: $telephone, Tour Date: $date, No in Party: $party,    Message: $message","From: $email");


<?php
$email = $_REQUEST['email'] ;
  $name  = $_REQUEST['name'] ;
  $telephone = $_REQUEST['telephone'] ;
  $date = $_REQUEST['date'] ;
  $party = $_REQUEST['party'] ;
  $message = $_REQUEST['message'] ;


if (!isset($_REQUEST['email'])) {
  header( "Location: ../contact.shtml" );
}
elseif (empty($email) || empty($message)) {
  header( "Location: ../contact-error.shtml" );
 }
   else {
   mail( "theresa.pert@me.com", "VoH Online Enquiry",
   "Name: <p>$name</p> <p>Telephone Number: $telephone</p> <p>Tour Date: $date</p> <p>No in Party: $party</p><p>Message: $message</p>","From: $email");
    header( "Location: ../contact-thankyou.shtml" );
  }
  ?>

【问题讨论】:

  • 您需要以某种方式指出电子邮件的 MIME 类型是 text/html。如果没有该指示,电子邮件将被视为纯文本,这似乎就是这里发生的事情。

标签: php html


【解决方案1】:

需要在邮件函数中指定header:

        $headers = "Reply-To: .... <mail@blabla.blabla>\r\n"; 
            $headers .= "Return-Path: .... <mail@blabla.blabla>\r\n"; 
            $headers .= "From:  .... <mail@blabla.blabla>\r\n"; 
            $headers .= "Organization: .... <mail@blabla.blabla>\r\n"; 
            $headers .= "Content-Type: text/html\r\n";  
            mail($email, $object, $text, $headers);

查看Mail 文档

【讨论】:

  • 您好,感谢您的帮助。代码正常工作(我收到一封包含内容的电子邮件)我只需要对其进行格式化,使其显示在单独的行中。
猜你喜欢
  • 1970-01-01
  • 2020-06-12
  • 1970-01-01
  • 2011-04-14
  • 1970-01-01
  • 2019-04-08
  • 1970-01-01
  • 2021-09-15
  • 1970-01-01
相关资源
最近更新 更多