0

这是php:

mysqli_connect("path","my_db","password")or die(); 
mysqli_select_db("my_db")or die();
$query="SELECT * FROM table WHERE type = '$var' OR type = '$othervar'";
$result=mysqli_query($query);
$num=mysqli_numrows($result);
mysqli_close();
$i=0;
while ($i < $num) {
$email=mysqli_result($result,$i,"email");
$i++;

if (!empty($email)) {
mail($email, $subject, $body, $headers);
}

我省略了为 $subject 等分配值的脚本,因为当查询仅返回 1 个电子邮件地址时,我能够成功发送电子邮件。

但是,当查询返回多个电子邮件地址时,我无法发送任何内容。

非常感谢您的帮助!

4

1 回答 1

0

在我的查询末尾添加“GROUP BY ...”最终对我有用。因为我是一个完全的业余爱好者,我不知道为什么:)

最终代码:

mysqli_connect("path","my_db","password")or die(); 
mysqli_select_db("my_db")or die();
$query="SELECT * FROM table WHERE type = '$var' OR type = '$othervar' GROUP BY email";
$result=mysqli_query($query);
$num=mysqli_numrows($result);
mysqli_close();
$i=0;
while ($i < $num) {
$email=mysqli_result($result,$i,"email");
$i++;

if (!empty($email)) {
mail($email, $subject, $body, $headers);
}
于 2013-03-30T16:46:51.593 回答