I have a deals table, with a field start date in the controller i am trying the below code and it is not returning any deal when there is deals with these conditions
Here’s the codes:
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'));
}
I am totally lost to why this isnt returning any deals as it should.
All help appreciated
Thanks
Dave
If you turn up the debug level in CakePHP, it should dump out the queries used.
Check the SQL generated for your select – perhaps the date format is the problem.