使用PHP和MySQL发送多封电子邮件
我在从MySQL数据库向地址子集发送电子邮件时遇到问题 它应该发送3封电子邮件(email1、email2、email3),但它只是发送第一封(email1)使用PHP和MySQL发送多封电子邮件,php,mysql,email,Php,Mysql,Email,我在从MySQL数据库向地址子集发送电子邮件时遇到问题 它应该发送3封电子邮件(email1、email2、email3),但它只是发送第一封(email1) 我认为问题出在while循环中。var\u dump$row\u iscriti并检查从数据库中获得的内容。如果你有一系列的电子邮件,那么你需要循环邮件功能。如果仍然存在问题,请在此处注释转储结果 foreach ($destinatario as $email) { mail($email....) } 编辑: 您在第6行
我认为问题出在
while
循环中。var\u dump$row\u iscriti并检查从数据库中获得的内容。如果你有一系列的电子邮件,那么你需要循环邮件功能。如果仍然存在问题,请在此处注释转储结果
foreach ($destinatario as $email)
{
mail($email....)
}
编辑:
您在第6行($destinario)收到电子邮件行,并在此处发送电子邮件:
if (mail($destinatario, $oggetto, $msg, $headers))
然后您已经开始循环:
while ($row_iscritti = mysql_fetch_assoc($iscritti));
做好准备,检查您拥有的:
while ($row_iscritti = mysql_fetch_assoc($iscritti))
{
var_dump($row_inscritti);
}
dump为我提供了正确的数组,其中包含MySQL数据库的所有值我已解决!
我换了
while ($row_iscritti = mysql_fetch_assoc($iscritti));
与
请注意,代码缩进不仅仅是为了视觉上的愉悦。如果您像您一样共享您的代码,那么其他人能够理解您的代码是很重要的。您只获取开头的一行,而结尾的循环是完全空的。请注意:您使用的是过时、不安全和不推荐的
mysql_……()
函数。php文档中明确指出了这个问题。您应该移植代码并立即开始使用mysqli
或PDO
。升级php后,您的代码将停止工作。您正在添加标题作为消息正文的一部分-即:内容类型:
等是标题您与mysql服务器的连接在哪里?(即,$conn
)
while ($row_iscritti = mysql_fetch_assoc($iscritti))
{
var_dump($row_inscritti);
}
while ($row_iscritti = mysql_fetch_assoc($iscritti));
while ($row_iscritti = mysql_fetch_assoc($iscritti))
mail($row_iscritti['email'], $oggetto, $msg, $headers);