【问题标题】:How can I create an email newsletter by taking objects from a database?如何通过从数据库中获取对象来创建电子邮件通讯?
【发布时间】:2010-04-27 01:00:15
【问题描述】:

嗯,我正在尝试创建一个时事通讯,它将向数据库中的用户发送电子邮件。时事通讯本身将从数据库中提取“事件”和其他活动。获取该列表并将它们放入电子邮件的最佳方式是什么?我正在考虑将它们放入 html 页面,然后发送 html 电子邮件,但并非所有电子邮件都支持 html(如学校电子邮件)。你们会推荐什么?你能指点我一些好的资源吗?

另外,这是一个学校项目,所以我不能使用任何开源类型的东西,很遗憾:(

【问题讨论】:

  • 你的学校说你不能使用开源?你报名参加了什么鬼节目?你还能得到退款吗? :)
  • 我已经添加了作业标签,因为您指定这是一个学校项目。

标签: php database newsletter


【解决方案1】:

您的假设是正确的,如果您正在创建 html 时事通讯,您还必须为不支持 html 或要求仅以文本形式发送电子邮件的客户创建基于文本的版本。您需要确保您的代码将两个版本都发送给收件人。您还可以询问收件人的偏好并将他们请求的特定版本发送给他们。

对于 html 电子邮件,强烈建议阅读以下两篇 CampaignMonitor 的文章(他们专门研究电子邮件营销软件):

请注意,我假设您是在寻求电子邮件 html 的实际构建方面的帮助,而不是创建和发送时事通讯所需的代码。

祝你的项目好运。

==== 更新 ====

看来您在开发这个项目时确实需要帮助。由于这是一项家庭作业,因此我将提供一些一般性建议,这些建议可以引导您朝着正确的方向前进并帮助您开始该项目。然后,如果您的代码有任何具体问题,可以在 Stackoverflow 上询问。

这里确实需要做两件事:

  1. 在 PHP 中,动态构造一个变量,其中包含需要发送的电子邮件的 html 或文本版本。
  2. 遍历您的联系人列表并通过电子邮件发送该变量的内容。

发送电子邮件

我将从发送电子邮件部分开始,因为下面提供的链接还向您展示了如何构建消息。此外,在您的评论中,您说您已经知道如何从数据库构造 html。以下链接向您展示了两种发送电子邮件的方法。您可以使用 PHP 附带的 Mail 功能或下载 PEAR_Mail 包。如果您被允许使用其他库并希望发送 html 电子邮件,我建议您使用 PEAR_Mail,因为如果您想同时发送 html 和文本版本的电子邮件,它会使事情变得更容易。

注意:要发送电子邮件,您需要使用某种邮件服务器。如果您使用的是 Windows,您可以安装 IIS 附带的 SMTP 服务,或者您可以使用外部 smtp 服务(例如 google)来发送您的电子邮件。

构建电子邮件

这里的复杂性取决于您是否只需要纯文本电子邮件或 html。无论哪种情况,您都需要从数据库中读取事件数据并将其添加到您要发送的消息中。

一些伪代码:

Loop through datarows
   message = DataRow[EventDate] + " " + DataRow[EventName] + "\n"

Loop through recipients 
   mail message

希望这能给你一个开始。我建议先让 php 发送静态 html 或文本的电子邮件。一旦你的代码工作了,你就可以开始添加从数据库读取事件信息并将其发送出去的功能。

希望这会有所帮助。

【讨论】:

  • 非常感谢!这真的很有帮助!但我确实需要帮助创建和发送:'(我可以通过从数据库中绘制各种东西来形成一个 html 页面,我只是不知道如何获取该页面,并将其放入并发送电子邮件......我想我'会回到我之前的声明,如果它更容易,我们可以实现开源脚本和东西,而不是整个安装的东西(Drupal,WP等)。
  • @jimmy 对不起,我花了这么长时间,但我终于得到了更新来更新我的回复。希望它包含您正在寻找的信息。
猜你喜欢
  • 2011-06-07
  • 2013-12-14
  • 2014-09-11
  • 1970-01-01
  • 1970-01-01
  • 2019-09-20
  • 2014-02-11
  • 2012-09-23
  • 1970-01-01
相关资源
最近更新 更多