#php #jquery #mysql #datatables
#php #jquery #mysql #таблицы данных
Вопрос:
У меня есть как показано ниже: После того, как я изменил show entries на 25 в datatable, datatable, похоже, не отвечает. Это просто отображение processing
внутри тела datatable.
Это скрипт на стороне сервера для отображения записей:
$sLimit = "";
if ( isset( $_POST['iDisplayStart'] ) )
{
$sLimit = " LIMIT ".mysql_real_escape_string( $_POST['iDisplayStart'] ).", ".
mysql_real_escape_string( $_POST['iDisplayLength'] );
}
почему это происходит? как это исправить?
Точно, у меня есть две таблицы данных внутри этой страницы.Я помещаю их в разные вкладки.
Проблема возникает во время показа range
столбца, но если не использовать этот столбец, все может работать должным образом.запрос, подобный:
$sQuery = "SELECT DATE(A.Inspection_datetime) AS Date, A.Line, A.Model,
A.Lot_no,A.Range_sampling,COUNT(A.Serial_number) AS Error,B.name AS PIC
FROM inspection_report A
LEFT JOIN Employee B
ON A.NIK=B.NIK
WHERE CHAR_LENGTH( A.Range_sampling ) < 17
AND MONTH(A.Inspection_datetime)=MONTH(CURRENT_DATE)" .$sWhere.$sGroupBy.$sOrder.$sLimit;
CHAR_LENGTH
Является ли это основной причиной? именно эта проблема возникает только на сервере базы данных для локального компьютера, все идет хорошо.почему?
Комментарии:
1. можете ли вы выгрузить весь запрос и опубликовать его? где-то должна быть ошибка..
2. Я думаю, что ошибка в вашей таблице. Можете ли вы предоставить дополнительную информацию?
3. @all: Я сбросил весь скрипт, пожалуйста, проверьте это.
4.
fnCallback(json);
который вызывается в вашем скрипте, нигде не определен. Подумайте о добавлении перед ним вызоваconsole.log()
oralert()
, чтобы посмотреть, удалось ли вообще выполнить ajax (в этом случае это виновник), и если да, вставьте его определение тоже.5. @Denis: Я добавляю оповещение (json) после успеха, затем показываю оповещение
[object Object]
.
Ответ №1:
У меня была такая же проблема. В обработчике fnServerData вы можете прочитать aoData[0].значение, чтобы получить значение ‘sEcho’. Эти значения должны быть присвоены свойству sEcho объекта json, который вы передаете в свой datatable.
Ожидаемый тип для sEcho также является строкой, и вы преобразуете его в целое число.
$sOutput .= '"sEcho": '.intval($_POST['sEcho']).',';
попробуйте просто
$sOutput .= '"sEcho": "'. $_POST['sEcho'] .'" ,';