0

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

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

4

1 回答 1

0

您的假设是正确的,如果您正在创建 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 或文本的电子邮件。一旦你的代码工作了,你就可以开始添加从数据库读取事件信息并将其发送出去的功能。

希望这可以帮助。

于 2010-04-27T01:15:22.317 回答