我需要帮助与此代码发送电子邮件给用户,当他们忘记激活他们的帐户。该代码能够打印未激活帐户的用户列表,但只向一个用户发送电子邮件。谢谢你!
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.'&token='.$token.'&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。