2015-04-15 112 views
1

我想在日期時間之間得到一個結果但不成功。日期時間與給定日期之間無法獲得結果

這個問題困擾了我很長一段時間。 我希望能得到專家解答。

我的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'); 

dateline類型是DATETIME。

+0

嘗試呼應此查詢SELECT SUM。 (total)AS總數FROM pos WHERE status = 1 and dateline> ='「。$ fromdate。」'AND dateline <'「。$ todate。」'「並在你的sql ui或phpmyadmin中運行並檢查它是否正在檢索任何記錄? –

+1

使用'BETWEEN':'WHERE status = 1 AND dateline BETWEEN'2015-04-11' AND'2015-04-15 18:30:00''' – Anthony

+0

@Chlam你傳遞給'fromdate'和' todate' in url? –

回答

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')"); 
相關問題