Получить ошибку при извлечении данных между двумя датами в codeigniter

Я пытаюсь получить данные между start_date и end_date, но запрос возвращает неизвестную ошибку столбца, вот мой код.

    if($start_date != '' && $end_date != '' && $exp_type != '')
    {
        $this->db->where("tbl_expenses.created_date BETWEEN " . $start_date . " AND ". $end_date); [Error occur bcz of this line]
        $this->db->where("tbl_expenses.expense_type",$exp_type);
        $result = $this->db->get();
        $data['searched_data'] = $result->result();
        $this->load->view('admin/filter_result_view',$data);

    }

Ошибка:

Спасибо всем за любую помощь.

2 ответа

Решение

Измените строку ошибки, как показано ниже. $start_date а также $end_date должен быть заключен в кавычки. И в этом случае $this->db->get() должен иметь в пределах get() метод.

Обновленный код, как показано ниже:

if($start_date != '' && $end_date != '' && $exp_type != '')
{
    $this->db->where("(tbl_expenses.created_date BETWEEN '" . $start_date . "' AND '". $end_date . "')");
    $this->db->where("tbl_expenses.expense_type",$exp_type);
    $result = $this->db->get('tbl_expenses');
    $data['searched_data'] = $result->result();
    $this->load->view('admin/filter_result_view',$data);
}

Пожалуйста, попробуйте эту строку вместо вашей строки ошибки

$this->db->where("tbl_expenses.created_date BETWEEN $start_date AND $end_date);

Другие вопросы по тегам