向多个用户发送激活提醒邮件


Send activation reminder emails to multiple users

我需要帮助与此代码发送电子邮件给用户,当他们忘记激活他们的帐户。该代码能够打印未激活帐户的用户列表,但只向一个用户发送电子邮件。谢谢你!

function joinDateFilter(){
   $query = mysql_query("SELECT * FROM oc_accounts WHERE active = 2");
   $mail_to = "";
   while ($row = mysql_fetch_array($query)){
    echo $row['name']." - ".$row['email']." - ".$row['createdDate']."'n";
       $mail_to = $row['email']."";
       $account_name = $row['name']."";
       $created_date = $row['createdDate']."";
       $token = $row['activationToken']."";
   }
   if (!empty($mail_to)){
    sendEmail($mail_to,$account_name,$created_date,$token);
  }
}

function sendEmail($mail_to,$account_name,$created_date,$token) {
    $url.='http://mywebsite.com/registrar-uma-nova-conta.htm?account='.$mail_to.'&token='.$token.'&action=confirm';
    $from    = "noreply@aeroclassificado.com";
    $message="<img src='http://www.mywebsite.com/images/logo.png'><br><br>
    Prezado ".$account_name.',<br><br>
    Seu cadastro criado em '.$created_date.' ainda não foi confirmado.<br><br>
    Clique no link abaixo para confirmar sua conta e começar a anunciar<br>
    seus produtos.<br><br>
    <a href="'.$url.'">confirmar conta</a><br><br>
    http://mywebsite.com/registrar-uma-nova-conta.htm?account='.$mail_to.'&amp;token='.$token.'&amp;action=confirm<br><br>
    Thanks!';
    $headers = 'From: '.$from."'r'n" .
    'Reply-To:'.$_POST['email']."'r'n" .
    "Content-Type: text/html; charset=iso-8859-1'n".
    'X-Mailer: PHP/' . phpversion();
    mail($mail_to,"Ative sua conta! - My website",$message,$headers);
}

如果我理解正确,这段代码应该发送电子邮件到数据库中的多个地址。在这种情况下,只需将if语句移动到while循环中:

function joinDateFilter(){
$query = mysql_query("SELECT * FROM oc_accounts WHERE active = 2");
$mail_to = "";
while ($row = mysql_fetch_array($query)){
echo $row['name']." - ".$row['email']." - ".$row['createdDate']."'n";
   $mail_to = $row['email']."";
   $account_name = $row['name']."";
   $created_date = $row['createdDate']."";
   $token = $row['activationToken']."";
if (!empty($mail_to)){
 sendEmail($mail_to,$account_name,$created_date,$token); }
 }
 }

还可以查看http://us1.php.net/mysqli。您应该将mysql命令更改为mysqli。