【问题标题】:PHP Email a list to userPHP 通过电子邮件将列表发送给用户
【发布时间】:2013-09-13 12:27:16
【问题描述】:

我有一个 php 脚本,它从 html 页面获取用户输入并创建了一个列表。我希望能够将该列表通过电子邮件发送给用户,并且已经从 html 页面获得了用户的电子邮件地址。

到目前为止,当用户点击“通过电子邮件将列表发送给我”时,我可以让程序自动打开此人的 Outlook 程序。我希望能够将列表复制并粘贴到电子邮件文档中,或者至少将链接复制并粘贴到列表所在的页面。

任何帮助将不胜感激。

谢谢

安德鲁

编辑:

HTML 表格:

 <strong>Email Address</strong><FONT COLOR="#FF0000">*</FONT>:
    <input type="text" name="emailaddress2"/> 
  <input type="submit" value="Submit"/>

PHP:

//THE LIST I NEED TO SEND, AND THE EMAIL FUNCTION




$FoodList=array_unique($FoodList);
if(!empty($FoodList))
{
   foreach ($FoodList as $key => $value)
   {
      echo "<li>" . $value . "</li>";
   }
   echo "</ul>";
}



<a href="mailto:<?php echo $_POST['emailaddress']; ?>">Email me List</a> 

(所以基本上我希望将列表粘贴到电子邮件中)

【问题讨论】:

  • 你能提供你的表格细节吗?
  • 我认为这不可能。自动复制/粘贴是禁止的,并且有大量的电子邮件客户端。为什么不通过 php 的邮件功能向用户发送邮件列表?
  • 我一直在做更多的研究,我认为有办法,我会及时通知你
  • 嗯,祝你好运。你真的应该看看this。它就是为此而生的。
  • 还有一个问题是我的“列表”并不是一个真正的典型列表(见编辑)。

标签: php email


【解决方案1】:

如上所述,内置的 PHP 邮件功能是一个更好的解决方案——无需与外部客户端交互。

但是,您可以通过在链接中添加“&body=”部分(您也可以添加“&subject=”等)来创建以列表为主体的mailto: 元素,如下所示:

 <a href="mailto:<?php echo $_POST['emailaddress']; ?>&subject=List&body=List1%0AList2>
 Email me List
 </a> 

如果列表是多行的,你可能需要做这样的事情(假设它是一个数组):

 implode($list, "%0A");

或者您可能想查看使用urlencode() 的列表,具体取决于列表中包含的其他字符。

请注意,某些邮件客户端可能会以不同于其他客户端的方式处理此问题,这就是为什么直接从 PHP 发送邮件是更好的选择,jboneca 评论中链接的示例应该足以获得你开始了。

已编辑以添加第二条注释以响应您的编辑:如果您想在邮件消息中嵌入 HTML,则需要使用 PHP 邮件程序,因为无法通过 mailto 链接 -看到这个答案:MailTo with HTML body

【讨论】:

    猜你喜欢
    • 2011-05-21
    • 2015-06-10
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 2016-05-25
    • 1970-01-01
    • 2022-01-13
    • 2010-11-22
    相关资源
    最近更新 更多