Codeigniter动态日期范围

时间:2016-05-26 21:13:58

标签: javascript php codeigniter

我被要求使用图表创建一些报告。我最近开始学习编程,所以我可能会问一些有点愚蠢的东西,但我真的很挣这个。我能够使用谷歌图表绘制图表并查询我的数据库,但我不知道如何实现日期范围选择器。这是我的模型,好吧,其中之一......

public function tester() {

 $this->db->where('type_id', 7);
 $this->db->where('entry_date >', '2016-05-11');
 $this->db->where('entry_date <', 'curdate()', FALSE);
 $this->db->select('first_name, last_name, count(type_id) AS totals');
 $this->db->from('entries');
 $this->db->join('users', 'users.user_id = entries.user_id');
 $this->db->group_by('entries.user_id');
 $this->db->order_by('totals', 'DESC');
 $this->db->limit(3);
 $query = $this->db->get();

 return $query->result();

}

where语句中的那些日期用于测试目的,它的工作正常。问题是:如何根据用户选择的开始和结束日期动态修改此查询并重绘图表?

提前致谢

1 个答案:

答案 0 :(得分:1)

通常包含开始日期和结束日期范围,您希望包含日期,因此我将其显示为&gt; =但您也可以将其设为&gt;如果你真的需要更大等等。

public function tester($startDate,$endDate) {

 $this->db->where('type_id', 7);
 $this->db->where('entry_date >=', $startDate);
 $this->db->where('entry_date <=', $endDate);
 $this->db->select('first_name, last_name, count(type_id) AS totals');
 $this->db->from('entries');
 $this->db->join('users', 'users.user_id = entries.user_id');
 $this->db->group_by('entries.user_id');
 $this->db->order_by('totals', 'DESC');
 $this->db->limit(3);
 $query = $this->db->get();

 return $query->result();

}