Я прошел через рекомендуемые сообщения и не могу найти ответ.JQuery DataTables - не может получить данные json от PHP на сервере
У меня есть последние jquery и datatables с их соответствующих сайтов.
У меня есть PHP-скрипт, который используется для доступа к MySQL данные для других страниц, так что я знаю, что это работает, но для справки здесь является PHP код (OTCalDBFetch.php):
<?php
// List of events
try {
// Connect to database
$connection = new PDO('mysql:host=localhost;dbname=items;charset=utf8mb4', 'uuuuuuuu', 'pppppppp');
// Prepare and execute query
$query = "SELECT * FROM items.events ORDER BY start";
$sth = $connection->prepare($query);
$sth->execute();
// Returning array
$events = array();
// Fetch results
while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
$e = array();
$e['id'] = $row['id'];
$e['title'] = $row['title'];;
$e['start'] = $row['start'];
// Merge the event array into the return array
array_push($events, $e);
}
// Output json for our calendar
$json = json_encode($events, JSON_HEX_TAG | JSON_HEX_AMP | JSON_HEX_APOS | JSON_HEX_QUOT);
echo $json;
exit();
} catch (PDOException $e) {
echo $e->getMessage();
}
>
И вот html, который я использую, почти точно пример с сайта datatables.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, maximum-scale=2.0">
<link rel="stylesheet" type="text/css" href="assets/css/datatables.min.css">
<script type="text/javascript" language="javascript" src="assets/lib/jquery.min.js"></script>
<script type="text/javascript" language="javascript" src="assets/lib/jquery-migrate-3.0.0.min.js"></script>
<script type="text/javascript" language="javascript" src="assets/lib/datatables.min.js"></script>
<script type="text/javascript" language="javascript" class="init">
$('#example').DataTable({
"ajax": {
"processing": true,
"serverSide": true,
"ajax": 'OTCalDBFetch.php',
},
"columns": [
{ "data": "start" },
{ "data": "title" }
]
});
</script>
</head>
<body class="dt-example">
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>start</th>
<th>title</th>
</tr>
</thead>
</table>
</body>
</html>
И то, что происходит в основном ничего. в браузере (Firefox)
- заголовок таблицы.
- Отладчик веб-разработчиков (Network) показывает, что запрос никогда не был выполнен.
Все это заставляет меня поверить, что я пропустил что-то очень простое. в html для вызова сервера.
Любая помощь будет оценена по достоинству.
Привет, Jim
Почему ваша 'обработка' /' serverSide'/'ajax' внутри' ajax'? https://datatables.net/examples/data_sources/server_side.html – Sean