Я пишу запрос к моей модели в codeigniter, это возвращает ошибку HTTP 500 при доступе через ajax, но при использовании браузера отсутствует код ошибки HTTP:
$query = 'select album.id,
album.name,
artist.name as artist,
artist.name as artistid,
album.photo,
album.active,
album.reasonactive from ' . $this->table .
' join artist on artist.id = album.ref_artist ';
if(isset($_POST["search"]["value"])){
$query .= '(artist.name LIKE "%'.$_POST["search"]["value"].'%" ';
$query .= 'OR album.name LIKE "%'.$_POST["search"]["value"].'%" ';
}
if(isset($_POST["order"])){
$query .= 'ORDER BY '.$column[$_POST['order']['0']['column']].' '.$_POST['order']['0']['dir'].' ';
}
else
{
$query .= ' ORDER BY album.name asc ';
}
if($_POST['length'] != -1)
$query .= 'LIMIT ' . $_POST['start'] . ', ' . $_POST['length'];
$result = $this->db->query($query);
return $result->result();
Это мой код ajax:
$(document).ready(function() {
table = $('#table').DataTable({
"processing": true, //Feature control the processing indicator.
"serverSide": true, //Feature control DataTables' server-side processing mode.
"order": [], //Initial no order.
// Load data for the table's content from an Ajax source
"ajax": {
"url": "<?php echo base_url('Manage/get_all')?>",
"type": "POST"
},
//Set column definition initialisation properties.
"columnDefs": [
{
"targets": [ 0 ], //first column
"orderable": false, //set not orderable
},
{
"targets": [ -1 ], //last column
"orderable": false, //set not orderable
},
],
});
но когда я меняю и удаляю запрос фильтра:
$query = 'select album.id,
album.name,
artist.name as artist,
artist.name as artistid,
album.photo,
album.active,
album.reasonactive from ' . $this->table . ' join artist on artist.id = album.ref_artist ';
код работает успешно.
В моем сообщении codeigniter:
Примечание: неопределенный индекс: длина
Примечание: неопределенный индекс: начало
Примечание: неопределенный индекс: рисование
И когда я показываю $ _POST:
{"draw":null,"recordsTotal":2,"recordsFiltered":2,"data":[]}
Как мне решить эту проблему?Большое спасибо за ваше время и помощь в этом вопросе.