我的查询不起作用。我正在使用codeigniter。我想根据日期范围过滤获取这些记录的列表。
这是我的控制器:
public function filter($type){
$fromdt = date("Y-d-m",strtotime($this->input->post("from")));
$todt = date("Y-d-m",strtotime($this->input->post("to")));
$session_data = $this->session->userdata('logged_in');
$this->load->model("mymodel");
print_r($this->mymodel->filterdata($fromdt,$todt,$session_data['id']));
}
这是我的模特:
public function filterdata($from,$to,$userid){
$query = $this->db->query("SELECT table1.id,table1.quest,table1.post_id,table1.quote_id,table2.in_dairy FROM table1,table2
WHERE table2.quote_id = table1.id AND table2.reader_id='$userid'
AND table1.in_dairy='yes' AND table2.dairy_dt>='$from' AND
table2.dairy_dt<='$to'");
return $query->result();
}
注意:我的dairy_dt字段是Mysql中的TYPE OF DATE。我不知道为什么它会显示空结果。
答案 0 :(得分:0)
尝试将您的功能更新为
public function filter($type){
$fromdt = date("Y-m-d",strtotime($this->input->post("from")));
$todt = date("Y-m-d",strtotime($this->input->post("to")));
$session_data = $this->session->userdata('logged_in');
$this->load->model("mymodel");
print_r($this->mymodel->filterdata($fromdt,$todt,$session_data['id']));
}
MySql日期格式如下: Y-m-d
答案 1 :(得分:0)
如果您没有分配您的查询,为什么要返回$ query-&gt; result()?我的意思是,
$this->db->query("SELECT table1.....
return $query->result();
$ query值在哪里?,你应该做
$query = $this->db->query("SELECT table1.....
return $query->result();