【发布时间】:2016-10-16 11:07:47
【问题描述】:
我正在尝试制作一个小联系表,在其中我可以向数据库中的多个用户发送电子邮件,我试图只选择所有电子邮件然后使用 while 循环发送给每个人,但是它是只发送到我数据库中的第一封电子邮件,而不是其余的.. 我不知道我哪里出错了
if(isset($_POST['submit'])) {
$body= $_POST['body'];
$subject= $_POST['subject'];
$user = $_SESSION["name"];
$sql = "SELECT * FROM $user";
$result = $conn->query($sql);
while($row = mysqli_fetch_array($result)){
$email = $row["contact_email"];
mail($email, $subject, $body,'From: myemail@gmail.com');
}
}
【问题讨论】:
-
如果每个用户都有一个数据库表,您应该再次仔细查看您的数据库设计,因为这听起来不对。
-
print_r($row["contact_email"])检查输出是什么。 @jeroen 是完全正确的。是否为每个用户创建表? -
@jeroen 我知道这不好,但我想不出任何其他方法:(
-
@kinshuk Lahiri 打印我数据库中的所有电子邮件地址
-
@dfarrelly 当然,有更好的方法。您可以为所有用户创建一个用户表。还有,你把我告诉的
print_r()放在哪里了?