我有这个代码用于从数据库向用户发送邮件, 但邮件始终只发送给第一个用户,即使更改顺序也是如此。 (请求从 AJAX 发送)
$headers = ...
$mailbody = ...
$sql = 'SELECT `email`, `name` FROM `users`';
$result = mysqli_query($link, $sql) or die(mysqli_error($link));
while ($row = mysqli_fetch_array($result)) {
$rows[] = $row;
}
foreach ($rows as $row) {
if (mail($row['email'],"title", $mailbody, $headers)) {
echo 'mail '.$row['name'].' OK';
return TRUE;
} else {
echo 'MAIL ERROR!!!';
return FALSE;
}
}
最佳答案
这是因为您在收到第一封成功的邮件后返回 TRUE
。至此函数结束。取出该行,并将其放在 foreach
完成之后。
关于PHP MySQL 多行不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30454103/