如何在PHP中向未知数量的电子邮件地址发送邮件?(推荐形式)


How can I send mail to an unknown amount of email addresses in PHP? (Referral Form)

我正在尝试编写一个自定义推荐表单。一个用户最多可以提交10封邮件,并且必须至少输入一封。

我使用POST方法为我的表单。如果用户输入了3封电子邮件(或5封、7封、9封等等),我该如何获取所有邮件?

此外,我使用JavaScript添加/删除字段。这并不重要,因为它们都有一个id, id的末尾附加了一个数字。(如tf1、tf2、tf3、tf4等)

这是我的HTML: http://www.graphicgoldfish.com/

让我知道我想要什么。

PHP:

$from = $_POST["tf_from"];
$r_char_name = $_POST["tf_character"];
$r_ign = $_POST["tf_ign"];
$contacts = array();
foreach($contacts as $contact) {
    $to = $contact;
    $subject = "Check out this server!"
    $message = "http://www.arithia.com"
    mail($to, $subject, $message, $headers);
}

这是目前为止我在PHP中得到的所有内容。(

编辑:我知道我可以使用一堆条件句,顺便说一句…(如果字段不是空的,发送电子邮件),但我相信有更好的方法做到这一点,我只是想知道。^ _ ^

每个电子邮件的input标签都需要一个name属性,例如:

<input type="email" name="emails[]" id="..">

在PHP中,当name[]结尾时,它将自动解析成一个数组。

for ($i = 0; $i < min(count($_POST['emails']), 10); $i++) {
  $email = $_POST['emails'][$i];
  // send email
}