无法在日期时间与2个给定日期之间获得结果

时间:2015-04-15 10:45:29

标签: php mysql datetime

我想在日期时间之间得到一个结果但是没有成功。

这个问题困扰了我很长时间。 我希望得到专家的答案。

我的PHP看起来像这样:

$fromdate = mysql_real_escape_string($_REQUEST['fromdate']);    
$fromdate = date_create_from_format('d/m/Y H:i:s', $fromdate);    
$fromdate = date_format($fromdate, 'Y-m-d H:i:s');

$todate= mysql_real_escape_string($_REQUEST['todate']);    
$todate= date_create_from_format('d/m/Y H:i:s', $todate);    
$todate= date_format($todate, 'Y-m-d H:i:s');    

$qtotal = mysql_query("SELECT SUM(total) AS total FROM pos WHERE status=1 and dateline >= '".$fromdate."' AND dateline < '".$todate."'");    
while ($ltotal = mysql_fetch_array($qtotal)){       
    $total = $ltotal['total'];    
}
echo $total;

我无法在php端获得任何结果,但MySQL查询工作正常。

select 
    sum(total) as total 
from pos 
where (status =1 and dateline >= '2015-04-11 00:00:00' 
and dateline < '2015-04-15 18:30:00'); 

日期行类型为DATETIME。

1 个答案:

答案 0 :(得分:0)

感谢您的帮助,我通过这种方式解决了我的问题...... ;我真的很困惑为什么可以使用=。=

$strtodate= strtotime($todate);
$strfromdate= strtotime($fromdate);

$fromdate = "".date('Y',$strfromdate)."-".date('m',$strfromdate)."-".date('d',$strfromdate)." ".date('H',$strfromdate).":".date('i',$strfromdate).":".date('s',$strfromdate)."";
$todate = "".date('Y',$strtodate)."-".date('m',$strtodate)."-".date('d',$strtodate)." ".date('H',$strtodate).":".date('i',$strtodate).":".date('s',$strtodate)."";

$qtotal = mysql_query("SELECT SUM(total) AS total FROM pos WHERE (status=1 AND dateline >= '$fromdate' AND dateline < '$todate')");