Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.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 筛选日期和时间之前的数据_Php_Mysql_Datetime - Fatal编程技术网

Php 筛选日期和时间之前的数据

Php 筛选日期和时间之前的数据,php,mysql,datetime,Php,Mysql,Datetime,我正在使用PHP和MSQL,无法正确筛选表的结果。我想显示表中的所有字段,这些字段保持的条件是我存储的日期和时间还有两个小时 我使用了此查询,但效果不好,因为如果当前月份为12,并且存储在DB 1中,则不会显示,好像即使存储的时间小于2小时,甚至是另一天: putenv('TZ=Europe/Madrid'); $anoE = date("y"); $mesE = date("m"); $diaE = date("d"); $horaE = date("H"); ...

我正在使用PHP和MSQL,无法正确筛选表的结果。我想显示表中的所有字段,这些字段保持的条件是我存储的日期和时间还有两个小时

我使用了此查询,但效果不好,因为如果当前月份为12,并且存储在DB 1中,则不会显示,好像即使存储的时间小于2小时,甚至是另一天:

 putenv('TZ=Europe/Madrid'); 

 $anoE = date("y");
 $mesE =  date("m");
 $diaE =  date("d");

 $horaE = date("H");
 ...

 $consulta = "SELECT tipo,nombre,descripcion,hora,minuto ,lugar,duracion,fecha,horacero,id,ano,dia,mes,equipo FROM ".$tabla." WHERE ".$anoE." <= `ano` AND ".$mesE." <= `mes` AND ".$diaE." <= `dia` AND ".$horaE." <= `(hora+2)` ORDER BY ano,mes,dia,hora,minuto";
我不知道如何编写查询的while条件,其中显示的字段比当天的当前时间晚了两个小时

如果字段类型为DATETIME,则使用简单查询:

挑选* 从表\u名称 其中datetime_字段_名称介于DATE_子行、间隔2小时和NOW之间
它将选择从现在起-2小时到现在的所有记录。

能否向数据库中添加一列以DATETIME YY mm dd HH:ii:ss格式存储日期?这可能是最简单也是最准确的。好吧,我将添加该列,但是我如何使条件保持两个小时呢?我想我可以使用TIMESTAMPDIFF.Yep,或者用PHP进行计算,比如date'Y-m-dh:i:s',time-2*60*60