public function getTotalActiveGroups()
{
return
$this->db->where('group_start >=', date('Y-m-d'))
->where('group_end <=', date('Y-m-d'))
->count_all_results('groups');
}
在我的管理页面中,我想显示处于活动状态的群组。例如,在完成课程管理页面后,小组将于2015年10月26日至2015年11月26日开始,不应显示哪些不活动。在我的表中有2个日期列“开始日期”和“结束日期”,显示了将运行多长时间。
答案 0 :(得分:1)
public function getTotalActiveGroups()
{
return
$this->db->where('group_start <=', date('Y-m-d'))
->where('group_end >=', date('Y-m-d'))
->count_all_results('groups');
}
答案对初学者来说足够棘手!!!!)))
答案 1 :(得分:0)
试试这个
date_default_timezone_set("Asia/Kolkata"); //include your timezone
$time = date('Y-m-d h-i-s');
$query = $this->db->query("SELECT * FROM table_name WHERE end_date => '$time' ");
$result = $query->result_array();
return $result;
这将返回仅在现在才有效的数据
答案 2 :(得分:0)
我建议你过滤SQL查询中的日期:
SELECT *
FROM `tablename`
WHERE (enddate BETWEEN '2015-10-01' AND '2015-10-26')
答案 3 :(得分:0)
如果你的group_start字段的类型为DATETIME(不是DATE),那么你需要使用MySQL函数DATE:
$this->db->where('DATE(group_start) >=', date('Y-m-d'))
->where('DATE(group_end) <=', date('Y-m-d'))
->count_all_results('groups');
答案 4 :(得分:0)
你可以尝试一下。
public function getTotalActiveGroups()
{
return
$this->db->where('DATE(group_start) >=', date('Y-m-d'))
->where('DATE(group_end) <=',date('Y-m-d',strtotime("+1 month")))
->count_all_results('groups');
}