gpt4 book ai didi

php - 将数据库中的时间与当前时间进行比较

转载 作者:行者123 更新时间:2023-11-30 00:09:15 24 4
gpt4 key购买 nike

我有一个显示用户个人资料的页面。个人资料将显示当前比赛的所有投注,但仅在比赛开始后 45 分钟内进行。我将体育比赛导入数据库并将其存储为日期时间字段。我需要将服务器上的当前时间与开始时间进行比较,如果是 45 分钟则显示数据。如果不是,我不想显示数据。这是我所做的。

<?php $today = date("Y-m-d"); ?>

<?php $newTime = strtotime('-45 minutes'); $time = date('Y-m-d H:i:s', $newTime); echo $time; ?>

<div class="row" style="padding-left: 20px; padding-right: 20px;">

<h4>Todays Bets</h4>
<p>User Bets will display 45 minutes after game start time and display for the day.<?php $date = date('Y-m-d H:i', time()); echo $date; ?></p>



<?php foreach ($conn->query("SELECT * FROM game_data INNER JOIN user_betting ON game_data.id=user_betting.game_id WHERE user_betting.handicapper_id=$uid AND DATE(date) = '$today' AND DATE(date) < DATE('$time') ORDER BY date ASC") as $bets) { ?>

如您所见,我确实回显了当前日期之前 45 分钟的时间。所以我得到了正确的 echo ,但是当游戏在那之后开始时我仍然得到响应。我不应该玩游戏。我在这里做错了什么,以确保 thisi 仅显示当前日期和游戏开始时间后 45 分钟。

这里是the page in action .

最佳答案

您将其放入DATE()函数中,该函数将仅返回日期YYYY-MM-DD,请尝试以下

 $sql = "
SELECT * FROM game_data
INNER JOIN user_betting ON game_data.id=user_betting.game_id
WHERE user_betting.handicapper_id=$uid
AND DATE(date) = '$today'
AND date < '$time' ORDER BY date ASC";

//Query now
foreach ($conn->query($sql) as $bets) {
...
}

Date() 仅检查提交的 DATETIME 的日期而不是时间部分。

关于php - 将数据库中的时间与当前时间进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24227200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com