Error undefined length, start, draw, search
Error undefined length, start, draw, search
hi, i want to ask how to make server side datatables on codeigniter.
this my model php
[code]
class Manifest_in_m extends CI_Model{
var $table = "awb_incoming";
var $select_column = array("id", "no_awb", "air_line", "product");
var $order_column = array(null, "no_awb", "air_line", null, null);
function make_query()
{
$this->db->select($this->select_column);
$this->db->from($this->table);
if(isset($_POST["search"]["value"]))
{
$this->db->like("no_awb", $_POST["search"]["value"]);
$this->db->or_like("air_line", $_POST["search"]["value"]);
}
if(isset($_POST["order"]))
{
$this->db->order_by($this->order_column[$_POST['order']['0']['column']], $_POST['order']['0']['dir']);
}
else
{
$this->db->order_by('id', 'DESC');
}
}
function make_datatables(){
$this->make_query();
if($_POST["length"] != -1)
{
$this->db->limit($_POST['length'], $_POST['start']);
}
$query = $this->db->get();
return $query->result();
}
function get_filtered_data(){
$this->make_query();
$query = $this->db->get();
return $query->num_rows();
}
function get_all_data()
{
$this->db->select("*");
$this->db->from($this->table);
return $this->db->count_all_results();
}
}
[/code]
this the controller
[code]
class Manifest extends CI_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('manifest_in_m');
}
public function index()
{
$this->load->view('manifest_incoming');
}
function fetch_user(){
$this->load->model("manifest_in_m");
$fetch_data = $this->manifest_in_m->make_datatables();
$data = array();
foreach($fetch_data as $row)
{
$sub_array = array();
$sub_array[] = $row->no_awb;
$sub_array[] = $row->air_line;
$sub_array[] = $row->product;
$data[] = $sub_array;
}
$output = array(
"draw" => intval($_POST["draw"]),
"recordsTotal" => $this->manifest_in_m->get_all_data(),
"recordsFiltered" => $this->manifest_in_m->get_filtered_data(),
"data" => $data
);
echo json_encode($output);
}
}
[/code]
i didn't create the view because i want to check my json first, but my json result like this
Message: Undefined index: length
Filename: models/Manifest_in_m.php
Line Number: 33
Message: Undefined index: length
Filename: models/Manifest_in_m.php
Line Number: 35
Message: Undefined index: start
Filename: models/Manifest_in_m.php
Line Number: 35
Message: Undefined index: draw
Filename: controllers/Manifest.php
Line Number: 30
i don't know why, but this is happend only for me, please help me, thank you
Answers
My guess is that since you are looking for
$_POST
variables, you haven't set theajax.type
option to be POST (the default is GET). Example available here.Allan