发送生日电子邮件不显示电子邮件

时间:2014-06-06 00:21:19

标签: php mysql email pdo

当我尝试为生日发送邮件时,我的表格中存在电子邮件问题..

这是打印屏幕,如果你看到右边的表格,有2个用户有生日但在输入下面的div错误是空的...并说"今天没有生日&#34 ;:

enter image description here

<?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&ntilde;eros!</div>';
  };
?>
<input type="text" id="email" name="email" value="<?php echo $email; ?>" />

如何显示将邮件发送给他们的电子邮件?

两个用户都有电子邮件,表格中的行是&#34; f_nac&#34;使用类型&#34;日期&#34;

2 个答案:

答案 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,您可以配置各种详细信息,例如:

  • 工作簿加载选项
  • 带有愿望的图像选项。
  • SMTP配置
  • 其他应用程序级别的配置,例如何时发送愿望,迟来的愿望,日志记录等。

    免责声明:我是该应用程序的所有者

相关问题