Выберите дату больше, чем сегодня, используя NotORM
У меня есть очень простой запрос (или я так думал) с использованием NotORM:
$query = $db-> irregular
->select('id','name','starttime','endtime')
->where('customer_id',$_SESSION['user']['customer_id'])
->where("startdate > ? ", new NotORM_Literal("NOW()")) );
"?" не заменяется в приведенном выше примере. Запрос только читает
SELECT id, name, starttime, endtime FROM irregular WHERE (customer_id = '1') AND (startdate > ? )
Как это должно работать в NotORM?
2 ответа
Присвойте значение now() переменной и используйте его в предложении where
$now =new NotORM_Literal("NOW()");
$query = $db-> irregular()
->select('id','name','starttime','endtime')
->where('customer_id',$_SESSION['user']['customer_id'])
->where("startdate > $now")->fetch();
или же
$query = $db-> irregular(array('customer_id'=>$_SESSION['user']['customer_id']))
->select('id','name','starttime','endtime')
->where("startdate > $now")->fetch();
Используйте что-то вроде этого:
$jobs = $this->db->jobs->where(array("deleted" => 1, "id" => $id))
->select('id', 'startDate')
->where('startDate < ?',$maxStartDate)
->where('startDate > ?',$minStartDate)
->order("id desc");