jQuery Datatable问题。 PHP接收json-data的Ajax调用

问题描述 投票:0回答:1

我尝试创建一个jquery_dataTable。与文档https://datatables.net/examples/api/row_details.html

配合使用效果很好

现在我尝试将呼叫从“ ajax”:“ some.php”的“ ajax”:“ objects.txt”中更改。

我的HTML表格:

<table id="systeme" class="display" style="width:100%">
    <thead>
        <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Email</th>
        </tr>
    </thead>
    <tbody></tbody>
    <tfoot>
        <tr>
            <th>ID</th>
            <th>Name</th>
            <th>Email</th>
        </tr>
    </tfoot>
</table>

接收数据的ajax调用是:

$(document).ready(function() {
    $.ajax({
    type : 'POST',
    url  : 'some.php',
    dataType: 'json',
    //cache: false,
    success :  function(result)
    {
      console.log(result);
      $('#systeme').DataTable({
        "searching": false, 
        "aaData": [result], //get the array data from the ajax call.
        "aoCcolumns": [
           {
             "className":      'details-control',
             "orderable":      false,
             "data":           null,
             "defaultContent": ''
           },
             { "result": "ID" },
             { "result": "Name" },
             { "result": "Email" }
         ],
         "order": [[1, 'asc']]
        });
    }
});

在PHP文件中,我连接到数据库并接收信息。

$conn = connectDB();
$dataArray = array();
$sql = "SELECT ID, Name, Email FROM `person` WHERE 1";
$result = $conn->query($sql);
if($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
        $dataArray[] = $row["ID"];
        $dataArray[] = $row["Name"];
        $dataArray[] = $row["Email"];
    }
}
closeDB($conn);

echo json_encode($dataArray);

[当我检查日志时,我会收到所有相关数据。它们的格式像

0: "1"
1: "Tom"
2: "mail@mail"
3: "2"
4: "Tim"
5: "mail@mail"
6: "3"
7: "Daniel"
8: "mail@mail"

但是在我的桌子里面只有一个实体(第一个实体)。我不知道如何正确格式化json文件或正确处理数据。为了达到这一点,我花了很多时间尝试了很多,但是现在我需要一些帮助。

我在所有这些东西中都是很新的,答案会很好

感谢

Timo

php jquery json ajax datatable
1个回答
0
投票

您认为您的数据应该这样设置:

© www.soinside.com 2019 - 2024. All rights reserved.