我希望在我的主页上添加一个Bootstrap 3模式。目前,我已将其设置为管理员可以登录并添加消息,例如,当天办公室已关闭。
模态工作正常并从数据库中提取消息。但我需要设定一个时间限制。我不希望它超过24小时,并且冒着让人觉得办公室第二天关闭的风险。
我的代码如下:
>while($row = pg_fetch_assoc($modal)){
if($row['Timestamp'] <= $row['Timestamp'] + 24 * 3600)
{
//show modal here
}
}
我将时间戳设置为日期('Y-m-d H:i:s')来设置创建的消息的时间。
我不明白为什么我不能为我的时间戳添加小时数。有没有更好的方法来设定时限?
答案 0 :(得分:0)
如果数据库中的时间戳具有以下格式Y-m-d H:i:s
(根据MySQL中的任何时间戳保存),则无法像您一样添加小时数。
最好这样做(未经测试的代码):
$oneDayFromNow = strtotime($row['Timestamp']) + 24 * 3600;
$oneDayFromNow = date('Y-m-d H:i:s', $oneDayFromNow);
因此,您将来有日期。你可以用它进行比较。
答案 1 :(得分:0)
您当前的条件陈述将始终为假 - 日期永远不会小于或等于其自身加上一天。
您需要与当前时间戳进行比较:
if($row['Timestamp'] <= date('Y-m-d H:i:s', strtotime('+1 days')))
{
//show modal here
}
答案 2 :(得分:0)
更新
我没有完全得到建议,但他们让我思考。以下是我解决问题的方法:
$date1 = strtotime(date('Y-m-d H:i:s'));
$date2 = strtotime($row['Timestamp']);
$interval = $date1 - $date2;
If($interval <= 24 * 3600) {
//modal here
}
我不确定这是否是最有效的方式,但它有效。感谢您的帮助。