Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将当前时间与PHP中表格中提到的时间进行比较,以确定活动/过期/即将到来的时间? [https://i.stack.imgur.com/ZkPTT.png][1]_Php_Database_Date - Fatal编程技术网

如何将当前时间与PHP中表格中提到的时间进行比较,以确定活动/过期/即将到来的时间? [https://i.stack.imgur.com/ZkPTT.png][1]

如何将当前时间与PHP中表格中提到的时间进行比较,以确定活动/过期/即将到来的时间? [https://i.stack.imgur.com/ZkPTT.png][1],php,database,date,Php,Database,Date,在这段代码中,我希望添加一列来显示活动/过期/即将发生的事件。在上表日期中,可以使用事件开始时间和事件结束时间 您可以在PHP代码中创建一个变量,根据表日期字段获取状态。检查以下代码: [https://i.stack.imgur.com/ZkPTT.png][1] <?php $email=$_SESSION['user']; $con = new mysqli('localhost', 'root', '', 'sconnect'); $data

在这段代码中,我希望添加一列来显示活动/过期/即将发生的事件。在上表日期中,可以使用事件开始时间和事件结束时间

您可以在PHP代码中创建一个变量,根据表日期字段获取状态。检查以下代码:

[https://i.stack.imgur.com/ZkPTT.png][1]        
<?php
    $email=$_SESSION['user'];
    $con = new mysqli('localhost', 'root', '', 'sconnect');
    $data="SELECT * FROM events WHERE email='$email';";
    $resmy=mysqli_query($con,$data);
    if ($data) {
        while($row = mysqli_fetch_array($resmy)) { 
            $gid = $row['event_id'];
            $gquery ="select * from events where event_id='$gid';";
            $myresq = mysqli_query($con,$gquery);
            $grow = mysqli_fetch_array($myresq);
            echo "<tr><td>".$row['event_id']."</td><td>".$grow['gname']."</td> 
            <td>".$grow['location']."</td><td>".$grow['date']."</td> 
            <td>".$grow['timing_from']."</td><td>".$grow['timing_to']."</td> 
            <td>".$grow['venue_details']."</td><td>".$grow['participants']."</td>
            </tr>";
       }
    } else {
       echo"<tr><td>You have not created any events yet</td></tr>";
    }
?>

你能发布表格结构吗?@Vidal我希望你能在代码顶部找到显示表格的链接。查看我的答案,告诉我你的想法。现在,我有两个单独的字段,作为表格中事件的开始时间和结束时间。现在,除了日期,我还必须比较时间来确定事件的状态。一旦通过它,如果你有任何建议,以改变表也请提及。非常感谢。我建议您更改表格,将3个字段改为2个字段。创建date_from和date_to(删除date、timing_from和timing_to),因为这样比较容易,而且如果任何事件的持续时间超过24小时,也可以管理。然后,您可以节省时间,例如:2019-02-04 18:00:00 db值,这将便于进行进一步比较。此外,还可以根据您的要求说明事件何时过期/即将到来并处于活动状态。我有两个疑问。1.如何通过HTML输入字段为date_from/date_to列提供输入。2.数据库中这些列使用的数据类型。请更新上述代码,假设我已在事件表中包含date_from和date_to列。
<?php
    $email=$_SESSION['user'];
    $con = new mysqli('localhost', 'root', '', 'sconnect');
    $data="SELECT * FROM events WHERE email='$email';";
    $resmy=mysqli_query($con,$data);
    if ($data) {
        while($row = mysqli_fetch_array($resmy)) { 
            $gid = $row['event_id'];
            $gquery ="select * from events where event_id='$gid';";
            $myresq = mysqli_query($con,$gquery);
            $grow = mysqli_fetch_array($myresq);
            if (strtotime(date('Y-m-d H:i:s')) > strtotime($grow['date_to'])) { // means current time is greater than event to time which makes it expired.
                $eventStatus = 'Expired';
            } else if (strtotime(date("Y-m-d H:i:s", strtotime('-24 hours'))) > strtotime($grow['date_from'])) { //means event will start with in next 24 hours.
                $eventStatus = 'Upcoming';
            } else if (strtotime(date('Y-m-d H:i:s')) > strtotime($grow['date_from']) && strtotime(date('Y-m-d H:i:s')) < strtotime($grow['date_to']) ) { //means current time is in between of date_from and date_to.
                $eventStatus = 'Ongoing';
            } else {
                $eventStatus = 'Active';
            }

            echo "<tr><td>".$row['event_id']."</td><td>".$grow['gname']."</td> 
            <td>".$grow['location']."</td><td>".$grow['date']."</td> 
            <td>".$grow['timing_from']."</td><td>".$grow['timing_to']."</td> 
            <td>".$grow['venue_details']."</td><td>".$grow['participants']."</td>
            <td>".$eventStatus."</td></tr>";
       }
    } else {
       echo"<tr><td>You have not created any events yet</td></tr>";
    }
?>