Как исправить данные, не отображаемые в DataTables в PHP, HTML - PullRequest
0 голосов
/ 24 декабря 2018

Я только недавно обнаружил 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 не может нормально работать.Спасибо всем за помощь

Ответы [ 2 ]

0 голосов
/ 24 декабря 2018

Ваш тег выглядит примерно так?Порядок, в котором сценарии, которые вы импортируете первыми (или отсутствующие), могут отключить весь плагин 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 очень полезна, так как это очень специализированный код.

0 голосов
/ 24 декабря 2018

Пожалуйста, попробуйте передать значение с "".В моем случае это работает с "".

ajax: {
        url: "data.php",
        type: "POST"
    };

Пожалуйста, укажите мой код данных, если вы нашли его полезным, а затем вернитесь.

ajax : {
                    url : "MainController",
                    type : "POST",
                    data : {
                        action : "getAssetListJSON"
                    }
                },
                columns : [ {
                    data : "AssetName",
                    className: "center"
                }, {
                    data : "HolderName",
                    className: "center"
                }
                ]
            })

;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...