2017-02-20 11 views
0

Уважаемый эксперт нужна помощь первым увидеть мой взгляд код в CodeIgniter:как поиск между датой использования пост в codeignitier

<div class="form-group"> 
     <label for="tglawal" class="col-sm-2 control-label">Periode</label> 
    <div class="col-sm-3"> 
     <div class="input-group date"> 
     <div class="input-group-addon"> 
     <i class="fa fa-calendar"></i> 
     </div> 
    <input type="date" class="form-control" name="tglawal" id="tglawal">     
    </div> 
    </div> 
    <div class="col-sm-3"> 
     <div class="input-group date"> 
     <div class="input-group-addon"> 
      <i class="fa fa-calendar"></i> 
     </div> 
     <input type="date" class="form-control" name="tglakhir" id="tglawal1">     
     </div> 
    </div> 
</div> 

и это мой код модели:

private function _get_datatables_query() 
    {  
     //add custom filter here 
     if($this->input->post('tglawal')) 
     { 
     $this->db->where('b.tglawal', $this->input->post('tglawal')); 
     } 
      if($this->input->post('tglakhir')) 
      { 
       $this->db->where('b.tglakhir', $this->input->post('tglakhir')); 
      } 
    } 
public function get_datatables() 
    { 
     $this->_get_datatables_query(); 
     if($_POST['length'] != -1) 
     $this->db->limit($_POST['length'], $_POST['start']); 
     $query = $this->db->get(); 
     return $query->result(); 
    } 

и мой контроллер, если я получаю важный код:

public function index() 
    { 
     $this->load->helper('url'); 
     $this->load->helper('form'); 
     $this->load->view('infokunjungan_view', $data); 
     } 
     else redirect(base_url()); 
    } 

    public function ajax_list() 
    { 
    $list = $this->Infokunjungan->get_datatables(); 
    $data = array(); 
    $no = $_POST['start']; 
    foreach ($list as $infokunjungan) { 
      $no++; 
      $row = array(); 
      $row[] = "<td style='vertical-align:middle'><center>{$no}<center></td>"; 
    $row[] = "<td style='font-size:9px; vertical-align:left;'>{$infokunjungan->tglawal}<center></td>"; 
    $row[] = "<td style='font-size:9px; vertical-align:left;'>{$infokunjungan->tglakhir}<center></td>"; 
    $output = array(
      "draw" => $_POST['draw'], 
      "recordsTotal" => $this->Infokunjungan->count_all(), 
      "recordsFiltered" => $this->Infokunjungan->count_filtered(), 
      "data" => $data,       
       ); 
     //output to json format 
     echo json_encode($output);  
    } 

проблема при поиске между двумя даты tglawal и tglakhir

im использование между 2016-12-04 и 2016-12-04 выходным дисплеем будет пустой , но если вы используете между 2016-12-04 и 2016-12-06 выходным успехом, где моя проблема, или, возможно, им, используя где или я должен использовать как?

+0

может помочь мне с кодом? –

+0

это мой код: если ($ this-> вход-> пост ('tglawal')) \t \t { \t \t \t $ this-> db-> где ('b.tglawal', $ this-> вход- > после ('tglawal')); \t \t} \t \t если ($ this-> вход-> пост ('tglakhir')) \t \t { \t \t \t $ this-> db-> где ('b.tglakhir', $ this-> вход-> после ('tglakhir')); \t \t} –

ответ

1

Вам необходимо использовать оператор> = и < =.

В вашей модели попробуйте ниже.

if($this->input->post('tglawal')) 
{ 
    $this->db->where('b.tglawal >=', $this->input->post('tglawal')); //assuming this is your begining (from) date 
} 
if($this->input->post('tglakhir')) 
{ 
    $this->db->where('b.tglakhir <=', $this->input->post('tglakhir')); //assuming this is your end(to) date 
} 

Вышеуказанное будет искать между датами, включая даты, выбранные. Используйте оператор в зависимости от начальной и конечной переменной.

+0

Привет, также вам может потребоваться поиск в пределах одного и того же table.field. Потому что вы ищете в двух разных полях даты в том, что я вижу. Было бы лучше, если поиск находится между b.tglawal> = $ this-> input-> post ('tglawal') и b.tglawal <= $this-> input-> post ('tglawal'). –

+0

Привет, Ela, спасибо до его среднего моделирования Где b.tglawal между '12/04/2016 00:00 'и '12/06/2016 00:00', поэтому используя b.tglawal> = $ this-> input-> post ('tglawal') и b.tglawal <= $this-> input-> post ('tglawal') –

+0

Hi Ela, его ошибка –