我不明白如何在handler.php处理程序中正确配置数组,将其带到此表单 -测试 BootstrapTable该表可以正常使用它。
MongoDB数据库中的数据选择由处理程序 (PHP) - handler.php执行:
if ($_POST['data_host'] == 1) {
try { // подключаемся к MongoDB
$mongo = new MongoDB\Client('mongodb://localhost:27017');
$collection = $mongo->mydatabase->customers; // выбираем коллекцию
$array = [];
$cursor = $collection->find([], array('_id', 'ip', 'port')); // возвращаемый курсор с заданными значениями
$k=0;
foreach ($cursor as $document) {
$array[$k] = array(
'rows' => array(
'id' => $k,
'ip' => $document['ip'],
'port' => $document['port']
));
//printf("%s: %s, %s\n", $k, $document['ip'], $document['port']);
$k++;
}
// отправляем назад данные
echo json_encode( $new );
} catch ( Exception $e ) {
echo '<p>Невозможно подключиться к MongoDB.</p>';
exit();
}
}
结果,形成了一个数组,该表不适用于该数组。 NON-WORKING OPTION - 该表不适用于它。
表.html
<div class="content">
<div class="fresh-table full-color-red">
<div class="toolbar"></div>
<table id="host_table" class="table"></table>
</div>
</div>
表.js
if (document.getElementById('host_table')) {
// инициализируем таблицу
$table = $('#host_table');
$(function () {
$table.bootstrapTable('destroy').bootstrapTable({
method: 'post',
url: HANDLER_URL + '?data_host=1',
classes: 'table table-hover table-striped',
toolbar: '.toolbar',
search: true,
pagination: true,
striped: true,
sortable: true,
pageSize: 9,
columns: [
{ field: 'id', title: 'ID', align: 'left', visible: true },
{ field: 'ip', title: 'IP', align: 'left', visible: true },
{ field: 'port', title: 'Port', align: 'left', visible: true }
],
formatShowingRows: function (pageFrom, pageTo, totalRows) {
return 'Showing ' + pageFrom + ' to ' + pageTo + ' of ' + totalRows + ' RDP host';
}
})
})
}
更正了数组“重组”的逻辑,将其带到参考(测试)输出:
// получаем данные таблицы
if ($_POST['data_rdphost'] == 1) {
try { // подключаемся к MongoDB
$mongo = new MongoDB\Client('mongodb://localhost:27017'); // без авторизации
$collection = $mongo->mydatabase->customers; // выбираем коллекцию
$cursor = $collection->find([], array('ip', 'port')); // возвращаемый курсор с заданными значениями
$arr = []; // инициализируем массив
$k = 0; // начальный id
// вносим в массив данные
foreach ($cursor as $document) {
array_push($arr, array(
'id' => $k,
'ip' => $document['ip'],
'port' => $document['port']
)
);
$k++;
}
// сращиваем массивы
$array = array(
'total' => 100,
'totalNotFiltered' => 100,
'rows' => $arr
);
// кодируем ответ
echo json_encode($array);
} catch ( Exception $e ) {
echo '<p>Невозможно подключиться к MongoDB. Проверьте работоспособность кода и процесса MongoDB.</p>';
exit();
}
}