0

我有这个问题。我在 PHP 中制作了一个注册公式(带有一个简单的后端/控制面板)。旅行者进入他们注册的页面(姓名、电话号码、电子邮件等)。然后注册存储在 MySQL 数据库中。每当控制面板加载时,它就会从 MySQL 数据库中获取所有信息。这是在不同国家/地区举行的不同运动营的注册。所以我正在尝试制作一个“向注册目的地 X 的参与者发送电子邮件”的方法,然后以某种方式向所有注册目的地 X 的人发送一封电子邮件。我已经考虑过几种不同的方法来做到这一点,但无法弄清楚,哪个更容易制作或更好。

1) 制作一个“SELECT theEmailAddress FROM tablename WHERE 1”,它会获取所有的电子邮件地址。此后,为每个人制作一个 PHP 邮件功能。然后制作一个联系人格式的 HTML 表单,发送到这些电子邮件中的每一个。我只是觉得这个解决方案看起来有点笨拙,还是什么?

2) 我已经创建了一个 Mailchimp 帐户。我也在考虑使用 Mailchimps API(我没有使用它,它看起来有点复杂)在控制面板中创建一个按钮,因此为每个目的地创建一个列表。然后应该从 Mailchimp 发送消息。这种方式的巨大好处是,不会有垃圾邮件过滤器的斗争(因为 Mailchimps 电子邮件很少被垃圾邮件过滤器捕获。

3)其他一些我还没有想到的聪明的方法。我愿意接受任何建议。

谢谢你。

4

3 回答 3

1

以下代码将继续发送邮件,直到处理完所有行(符合条件)。

$query = mysql_query("SELECT theEmailAddress FROM tablename WHERE 1");
while ($row = mysql_fetch_assoc($query)) {

  $to      = $row['theEmailAddress'];
  $subject = 'the subject';
  $message = 'hello';
  $headers = 'From: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

  mail($to, $subject, $message, $headers);
}

然而,大多数邮件服务器都会阻止 php 邮件程序,或者将其标记为垃圾邮件。所以我建议研究一个 SMTP 邮件类。有很多不同的类型,所以你必须自己选择一个。但是您可以连接到 gmail(或其他 SMTP 帐户)并通过那里发送您的邮件。它使事情更可靠。

于 2013-03-04T01:14:45.013 回答
1

我推荐使用 MailChimp 制作的Mandrill API而不是 MailChimp API(设计用于向人员列表发送电子邮件活动) 。它是一种用于发送一次性和交易电子邮件的 API,如您所描述的。使用 Mandrill 将具有可靠的交付能力(如您所提到的)的优势,并为您提供有关谁在打开和单击您的电子邮件的数据。

在这种情况下,您将有一个类似于@Neograph734 的脚本,但您将使用 Mandrill API,而不是使用 PHP 的 mail() 函数。

@Neograph734 也是正确的,您也可以使用直接 PHP 来做到这一点。

于 2013-03-04T19:42:28.580 回答
1

MailChimp API 具有您需要的功能。一种方法是创建每个国家特定的利益集团。单独使用群组可以让您向整个列表发送电子邮件,并按每个用户订阅的群组自定义内容。与Segments结合使用,您可以只写给兴趣组的成员。

MailChimp API 可能看起来很复杂,但它正在建模一个固有的复杂问题。API 经过精心设计,只具有所需的功能。

您也可以通过使用您的程序生成列表来进行妥协,然后手动将其导入 MailChimp 并从 Web UI 发送电子邮件。这取决于列表的大小以及您发送电子邮件的频率。

如果您想要坚如磐石的电子邮件和跟踪,MailChimp 是您的不二之选。只是需要一些时间来学习。

于 2013-03-07T23:18:32.290 回答