PHP将sqlite查询结果编码为JSON并绑定到JQUERY数据表



使用PHP v8.1.6和SQLITE 3.39.4以及jQuery Datatable。我从php脚本中得到的json没有绑定到表。

获取数据的脚本:

$db = new SQLite3('mealplan.db');
$results = $db->query('SELECT id, [name] FROM mealType;');
while ($row = $results->fetchArray(SQLITE3_ASSOC)) {
$jsonArray[] = $row;
}
echo json_encode($jsonArray)

设置数据表的javascript:

$(document).ready(function(){  
$('#tbl').DataTable({
processing: true,
serverSide: true,
ajax:'processing.php',
columns: [
{ data: "id" },
{ data: "name" }
]
});  
});  

在网络选项卡中,这是我从php脚本中获得的原始json:

[{"id":1,"name":"Snack"},{"id":2,"name":"Dinner"},{"id":3,"name":"Lunch"},{"id":4,"name":"Breakfast"},{"id":5,"name":"Sweets"},{"id":6,"name":"Drinks"}]

数据表被呈现为具有所有可数据化的特性,它只是空的。

我在这里错过了什么?

解决方案。我的问题是ajax属性中没有dataSrc属性。以下是工作javascript:

$('#tbl').DataTable({
ajax:{url:'processing.php',dataSrc:""},
columns: [
{ data: "id" },
{ data: "name" },
]           
});  

最新更新