2011-09-02 49 views
1

我有一個交易表,與控制器我試圖下面的代碼字段開始日期和時有這些條件CakePHP的查找問題

這裏的交易也沒有返回任何交易的代碼:

function todays_deal($CitySlug = null) { 

     $city = $this->City->find('first', array('conditions' => array('City.slug' => $CitySlug))); 
     $CityID = $city['City']['id']; 
     $now = date('Y-m-d H:i:s'); 
     $conditions = array(
      'Deal.city_id' => $CityID, 
      'Deal.type' => 'F', 
      'Deal.start >=' => $now 
     ); 

     $deal = $this->Deal->find('first',array('conditions'=> $conditions, 'order' => 'Deal.start DESC')); 
    $left = array(); 
     $now = time(); 
     //Change dates to timestamp 
     $end = strtotime($deal['Deal']['end']); 
     $start = strtotime($deal['Deal']['start']); 
     if($end < $start){ 
      $end = $start; 
     } 

     $diff_time = $left_time = $end - $now; 

     if ($start >= $now) { 
      $diff_time = $left_time = $start - $now; 
     } 

     $left_day = floor($diff_time/86400); 
     $left_time = $left_time % 86400; 
     $left_hour = floor($left_time/3600); 
     $left_time = $left_time % 3600; 
     $left_minute = floor($left_time/60); 
     $left_time = $left_time % 60; 

     $this->set(compact('deal', 'left_day', 'left_hour', 'left_minute', 'left_time', 'now', 'diff_time')); 

    } 

我完全失去了爲什麼這不返回任何交易,因爲它應該。

所有幫助表示讚賞

感謝 戴夫

回答

2

如果打開了debug level in CakePHP,應該轉儲使用的查詢。

檢查爲您的選擇生成的SQL - 也許日期格式是問題。

+1

感謝您意識到它正在檢查開始日期的時間lol :) – Dave