datatables serveride присоединяются к codeigniter

Я попытался объединить данные, используя datatable serveride в codeigniter через ajax, но я получаю результат ошибки, как это

Сообщение: вызов функции-члена result () для логического значения

Имя файла: models / model_masterdata_menu.php

Номер строки:
66

private function _get_datatables_query()
{ //term is value of $_REQUEST['search']['value']
$column_search = array('m.menu_id, m.menu_nama, m.menu_url, sm.statusmenu_nama');
$column_order = array('m.menu_id, m.menu_nama, m.menu_url, sm.statusmenu_nama',NULL);
$order = array('m.menu_id' => 'desc');
$this->db->select('m.menu_id, m.menu_nama, m.mmenu_url, sm.statusmenu_nama');
$this->db->from('menu as m');
$this->db->join('status_menu sm', 'sm.statusmenu_id = m.statusmenu_id','left');
$i = 0;

foreach ($column_search as $item) // loop column
{
if($_POST['search']['value']) // if datatable send POST for search
{

if($i===0) // first loop
{
$this->db->group_start(); // open bracket. query Where with OR clause better with bracket. because maybe can combine with other WHERE with AND.
$this->db->like($item, $_POST['search']['value']);
}
else
{
$this->db->or_like($item, $_POST['search']['value']);
}

if(count($column_search) - 1 == $i) //last loop
$this->db->group_end(); //close bracke
}

$i++;
}
if(isset($_POST['order'])) // here order processing
{
$this->db->order_by($order[$_POST['order']['0']['column']], $_POST['order']['0']['dir']);
}
else if(isset($this->order))
{
/*$order = $this->order;*/
$this->db->order_by(key($order), $order[key($order)]);
}

}function get_datatables()
{

$this->_get_datatables_query();
/*$this->_get_datatables_query();*/
if($_POST['length'] != -1)
$this->db->limit($_POST['length'], $_POST['start']);

$result = $query->result(); # added

}

в чем дело?
Может кто-нибудь мне помочь?

0

Решение

я не знаю почему это говорит тебе Call to a member function result() on boolean потому что на основе вашего кода вы даже не объявили $query должным образом.

В любом случае вы пробовали что-то подобное?

function get_datatables()
{

$this->_get_datatables_query();
if($_POST['length'] != -1)  $this->db->limit($_POST['length'], $_POST['start']);
$query = $this->db->get();

return ($query->num_rows() > 0) ?   $query->result()    :   false;
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector