当我尝试为生日发送邮件时,我的表格中存在电子邮件问题..
这是打印屏幕,如果你看到右边的表格,有2个用户有生日但在输入下面的div错误是空的...并说"今天没有生日&#34 ;:
<?php
$sql = $conn->prepare("SELECT email FROM USERS WHERE f_nac >= CURDATE() AND f_nac < CURDATE() + INTERVAL 1 DAY ORDER BY f_nac ASC");
$sql->execute();
while($row = $sql->fetch(PDO::FETCH_ASSOC)) {
$email = ($row['email'].", ");
}
$largo=strlen($email);
if ($largo>2)
$email=substr($email,0,$largo-2);
} else {
echo '<div class="alert alert-danger">No hay cumpleañeros!</div>';
};
?>
<input type="text" id="email" name="email" value="<?php echo $email; ?>" />
如何显示将邮件发送给他们的电子邮件?
两个用户都有电子邮件,表格中的行是&#34; f_nac&#34;使用类型&#34;日期&#34;
答案 0 :(得分:0)
CUR_DATE()
是在2014年,生日是在1975年和1978年。当你进行比较时,你必须忽略这一年。
SELECT email
FROM USERS
WHERE MONTH(f_nac) = MONTH(NOW()) AND DAY(f_nac) = DAY(NOW())
在while
循环中,您覆盖$email
,而不是附加到$email = '';
while ($row = $sql->fetch(PDO::FETCH_ASSOC)) {
$email .= ($row['email'].", ");
}
。它应该是:
{{1}}
答案 1 :(得分:0)
您当前正在做的是每天(每天)从SQL中提取数据并撰写并通过电子邮件手动发送愿望。如果我建议您采用更好的方法怎么办?
有一个名为Wishing Application的应用程序,可以轻松发送生日和工作周年纪念邮件。
它至少需要两件 excel文件,其中包含愿望详细信息(日期,姓名,电子邮件)和配置文件( application.properties ),就是这样,你很好。
此外,本地还有各种options to run应用程序(命令行,前台,后台,泊坞窗,Windows Scheduler,Unix cron等)云。
应用程序为highly configurable,您可以配置各种详细信息,例如:
其他应用程序级别的配置,例如何时发送愿望,迟来的愿望,日志记录等。
免责声明:我是该应用程序的所有者