Я только недавно обнаружил DataTables и хотел бы реализовать в своей сети. Выполнял инструкции для данных SSP, но не смог вывести мои данные.
Я пробовал некоторые решения с нескольких других сайтов, но ни одно из них не работает.
index.php
<script>
function() {
$('#staff').DataTable( {
processing: true,
serverSide: true,
ajax: {
url: 'data.php',
type: 'POST'
};
} );
}
</script>
data.php
<?php
$table = 'staff';
$primaryKey = 'staff_id';
$columns = array(
array( 'db' => 'staff_id', 'dt' => 0 ),
array( 'db' => 'grade', 'dt' => 1 ),
array( 'db' => 'name', 'dt' => 2 ),
array( 'db' => 'position', 'dt' => 3 ),
array( 'db' => 'cost_centre', 'dt' => 4 ),
array( 'db' => 'station', 'dt' => 5 ),
array( 'db' => 'ic_number', 'dt' => 6 ),
array( 'db' => 'status', 'dt' => 7 )
);
// SQL server connection information
$sql_details = array(
'user' => 'root',
'pass' => '',
'db' => 'feldatransport',
'host' => 'localhost'
);
require( 'ssp.class.php' );
echo json_encode(
SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
);
?>
Я хочу, чтобы данные отображались в моем штатном расписании.
Обновлено: я загрузил свой файл в репо. Github
ОБНОВЛЕНИЕ: проблема решена. Это была моя аранжировка сценариев. В последнюю очередь я помещаю сценарий JQuery, поэтому DataTables не может работать должным образом. Спасибо всем за помощь
В моей таблице нет данных.
Покажите свой результат, что вы получаете после json-кодирования.
{"draw": 0, "recordsTotal": 646, "recordsFiltered": 646, "data": [["1100108", "8", "Zamros Rofdi Bin Mohd Ros", "Eksekutif Kanan", "442011055", «HQ-MTO», «701111065301», «0»], [«1100166», «G4O», «Шариза Бинти Абу Бакар @ Харун», «Керани Канан», «443011010», «HQ-Jawat & Tadbir», «750223025604 "," 0 "]
Размещение сообщений на форумах Data-table.net очень полезно, поскольку это очень специализированный код. Иногда здесь нет ответа.
@JeffBezos хорошо, спасибо, попробую там удачу






Пожалуйста, попробуйте передать значение с помощью "". В моем случае это работает с "".
ajax: {
url: "data.php",
type: "POST"
};
Пожалуйста, обратитесь к моему коду с данными, если вы сочтете его полезным, затем вернитесь.
ajax : {
url : "MainController",
type : "POST",
data : {
action : "getAssetListJSON"
}
},
columns : [ {
data : "AssetName",
className: "center"
}, {
data : "HolderName",
className: "center"
}
]
})
;
Пробовал, что раньше все та же проблема
Я обновил раздел своим рабочим кодом. Если вы сочли полезным.
Я пробовал ваш код, но он все тот же. Попробую спросить на форуме по таблицам данных. Спасибо за помощь!
Ваш тег выглядит примерно так? Порядок, в котором скрипты, которые вы импортируете первым (или если он отсутствует), может привести к отключению всего подключаемого модуля datatables.
<head>
<meta http-equiv = "Content-type" content = "text/html; charset=utf-8">
<meta name = "viewport" content = "width=device-width,initial-scale=1">
<title>DataTables Server-Side Processing</title>
<!-- -->
<meta name = "viewport" content = "width=device-width, initial-scale=1">
<link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<!-- datatable lib -->
<link rel = "stylesheet" href = "https://cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css">
<script src = "https://code.jquery.com/jquery-1.12.4.js"></script>
<script src = "https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>
</head>
У меня есть работающие серверные таблицы данных здесь: https://databasetable-net.000webhostapp.com/ Иногда (я не знаю почему) вам нужно использовать $ _POST, а не $ _GET в server.php, даже если в примере datatables используется $ _GET. Это может быть одна проблема. Во всяком случае, вот мой рабочий код. Server.php
<?php
$table = 'employees';
$primaryKey = 'id'; // Table's primary key
$columns = array(
array( 'db' => 'id', 'dt' => 0 ),
array( 'db' => 'first_name', 'dt' => 1 ),
array( 'db' => 'last_name', 'dt' => 2 ),
array( 'db' => 'zip', 'dt' => 3 ),
array( 'db' => 'date', 'dt' => 4 ),
array( 'db' => 'updated', 'dt' => 5 ),
);
$sql_details = array(
'user' => 'username',
'pass' => 'password',
'db' => 'database',
'host' => 'localhost'
);
require( 'ssp.class.php' );
echo json_encode(
SSP::simple( $_POST, $sql_details, $table, $primaryKey, $columns )
);
?>
Наконец, очень полезно размещать сообщения на форумах datatables.net, поскольку это очень специализированный код.
Спасибо за совет. Пробовал оба метода, но все еще не работает. Попробую форумы с данными. Спасибо!
Круто, дай мне знать, что они говорят. Некоторые из них действительно знают свое дело.
добавлен в очередной попытке решения. ваши теги сценария могут быть в неправильном порядке, возможно .... я вижу, что Кевин ответил на ваше сообщение на форуме datatables, он один из лучших.
также, вероятно, не будет иметь никакого значения, но у меня будет $(document).ready(), как в реальном примере, а не функция
здорово! дайте мне знать, если у вас возникнут другие проблемы. пытаюсь освоить таблицы данных, так что это тоже дает мне практику!
С какой ошибкой вы столкнулись после этого скрипта?