【发布时间】:2018-11-26 17:34:24
【问题描述】:
我正在编写脚本以使用 php 将邮件发送到我的表中的电子邮件列表
目前我在表上运行一个查询,并从 sql 查询中回显所有满足此类要求的电子邮件
sql="SELECT * FROM people WHERE status in('member','client')";
$result = mysql_query($sql)or die("Cannot query orders_products data" . mysql_error());
while($row=mysql_fetch_array($result)) {
$list = array();
$list[] = $row['Email'];
echo implode(",",$list);
$email = 'xxxxxxxxxxx';
$emailto = implode( "," ,$list );
$subject = "xxxxxxxxxxxxxxxx";
$headers = "From: $email";
$body .= ++$i.") ".$row['title'] ."\n\n";
}
$body .= "Regards\n\n";
$body .= "xxxxxxxxxxxxxxxxxx\n\n";
$send = mail($emailto, $subject, $body, $headers);
当我尝试将这些电子邮件传递给邮件函数 sn-p 时,邮件发送失败。
请问我做错了什么,我需要帮助
更新:
$list[] = $row['Email'];
echo implode(",",$list);
显示所有电子邮件
但没有逗号。
$emailto = implode( "," ,$list );
我使用相同的方法对从
获得的数据数组进行内爆$list[] = $row['Email'];
我的意思是我希望因为电子邮件使用 implode 得到回显,所以我希望它都能成功地将电子邮件传递给 $emailto,然后向每个人发送一封邮件。
【问题讨论】:
-
嗨,欢迎来到 Stack Overflow :) 很高兴你包含了你的代码。您能否澄清一下:“当我尝试将这些电子邮件传递给邮件功能 sn-p 时,邮件发送失败。”这个函数是你提供的代码的最后一行吗?您能否提供堆栈跟踪、错误消息或“失败”含义的描述?
-
您的数据库需要正确规范化
-
嗨@MyStackRunnethOver 我已经更新了我的问题以解释失败的含义
-
@Akintunde-Rotimi 您的评论如何适合所提出的问题?
-
@chapman this
sql="SELECT * FROM people WHERE status in('member','client')";表明您的表格未正确规范化。status可以在自己的表上,然后使用 id 链接它。这将有助于拥有一个完全独立的表,其中包含状态以及链接的用户。在itprotoday.com/microsoft-sql-server/… 阅读规范化。它将为您节省未来的问题。从上面的代码中,在开始编写任何应用程序之前,您需要一个适当的 PHP 教程