【问题标题】:PHP sendmail() formatting not preservedPHP sendmail() 格式未保留
【发布时间】:2010-07-28 19:19:25
【问题描述】:

我正在为能够发送电子邮件的客户端创建一个 Web 应用程序。我正在为我的文本编辑器使用 TinyMCE,效果很好。我正在使用 sendmail() 和 PHP Swiftmailer 来处理电子邮件的实际发送。 Swiftmailer 也很好用。

我遇到的唯一问题是,当我收到电子邮件(在 Gmail 中)时,格式没有正确呈现。我在电子邮件正文中收到以下内容:

<p>Oh Hello! This is a test <strong>message</strong>. Here is a link: <a href=\\\"http://www.google.com\\\">Google</a>.</p>\r\n<p>&nbsp;</p>\r\n<p>&nbsp;</p>\r\n<p>&nbsp;</p>\r\n<p>Line breaks!<br /> <br /> Shift breaks!</p>\r\n<p>&nbsp;</p>\r\n<p>Bye!</p>

链接呈现,仅此而已。我错过了什么?

谢谢!

【问题讨论】:

    标签: php html email formatting tinymce


    【解决方案1】:

    查看文档中的第二个和第三个代码块,了解如何设置 HTML Content-Type...

    http://swiftmailer.org/docs/header-parameterized

    【讨论】:

    • 谢谢。在消息对象中设置字符集与在标头中设置字符集有区别吗?
    • 老实说,我不能肯定地说,我不熟悉 Swift Mailer,我只知道你必须设置标题,所以谷歌搜索了他们的文档以了解如何做到这一点。我想在一天结束时他们归结为同一件事,但一个可能会在某个时候覆盖另一个。
    【解决方案2】:

    您需要以实际的 HTML 格式发送电子邮件。相反,您发送的是 HTML 的纯文本。链接呈现是因为 Google 很好,并且会自动链接它认为有效的 URL。

    我强烈推荐 Pear 邮件课程。有设置 HTML 和纯文本消息正文的便捷功能。

    【讨论】:

      【解决方案3】:

      在你的情况下我会做的是这样的:

      <?php
      
      $headers = "From: Me <me@myemail.com>\r\n";
      $headers .= "X-Mailer: PHP/".phpversion()."\r\n";
      $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";  //States it is HTML Content
      $headers .= "Content-Transfer-Encoding: 7bit\r\n";
      
      $subject = "This is my subject";
      
      $message = <<<MESS
      <p>Oh Hello! This is a test <strong>message</strong>. Here is a link: <a href="http://www.google.com">Google</a>.</p>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <p>Line breaks!<br /> <br /> Shift breaks!</p>
      <p>&nbsp;</p>
      <p>Bye!</p>
      MESS;
      
      if(mail("", $subject, $message, $headers) == True){
           echo "Message Sent";
      } else {
           echo "Message NOT Sent"
      }
      
      ?>
      

      注意:GMAIL 对电子邮件的显示方式非常挑剔。最好创建一个 gmail 帐户并自己测试它的外观。 Hotmail 类似

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多