首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >定时电子邮件提醒

定时电子邮件提醒
EN

Stack Overflow用户
提问于 2014-09-21 12:06:35
回答 1查看 104关注 0票数 1

我的工作是一个预订系统,允许人们72小时(3天)通过点击一个链接来确认他们的注册。如果注册还没有被确认,我想在48小时(2天)后发送一封提醒邮件。如果在72小时(3天)后仍未确认,将从数据库中删除登记。

但是,我不知道如何处理if/else语句。我的逻辑在我的今天消失了。有人能帮我处理一下正确的if和else语句吗?非常感谢!

代码语言:javascript
复制
<?php include "config.php"; ?>
<?php

// Connect to database
$query = mysqli_query($con,"SELECT * FROM reservations WHERE reserved='yes' AND confirmed='no'");
$row = mysqli_fetch_array($query);

// set reservation time
$datetime = $row['datetime'];
$datetime -> modify('+3 days'); 

$now = date("Y-m-d H:i:s");

foreach $query as $row {
   if ($datetime > $now) {
        //it still has time. sent reminder if less than 24 hours left.
   } else {
       //time has passed, set registration inactive.
   }
}
?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-21 12:19:22

为什么不在数据库中进行日期比较呢?

代码语言:javascript
复制
SELECT *
FROM reservations
WHERE reserved='yes' AND confirmed='no' AND
      datetime > now() - interval 3 day AND datetime <= now() - interval 2 day;

这将只返回您想要联系的行,因此您不需要应用程序端的附加逻辑(对于datetime)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25959010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档