Отображение данных mongodb, прочитанных php с использованием AngularJS - PullRequest
1 голос
/ 10 октября 2019

У меня есть некоторый php-файл, который читает данные из локальной базы данных mongodb, и я пытаюсь использовать angularjs для чтения этих данных и отображения их в html-таблице. В настоящее время я могу отображать и просматривать данные в консоли с помощью XMLHttpRequest. Но на странице ничего не отображается (даже {{}}). Это просто пустая страница. Как я могу отобразить эти данные, используя angularjs?

Вот что отображает в консоли один из элементов данных:

{_id: {…}, name: "Fri Oct 04 2019 06:10:36 GMT+0000 (UTC)", action: "Test action", ao: "MC"}

HTML с кодом JS и AngularJS

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Read All MongoDB</title>
  <script src="js/angular.js"></script>
</head>
<body ng-app="myApp">
  <div ng-controller="myController" class="content">
     <table id="searchTextResults">
       <tr ng-repeat="item in items">
         <td>{{item.date}}</td>
         <td>{{item.action}}</td>
         <td>{{item.ao}}</td>
       </tr>
     </table>
  </div>
<script>
    // using XMLHttpRequest to display data in the console
    var oReq = new XMLHttpRequest();
    oReq.onload = function() {
            var data = this.responseText;
            var parsed = JSON.parse(`[${data}]`);
            console.log(parsed);
            for(let i = 0; i < parsed.length; i++) {
                    console.log(parsed[i]);
            }
    };
    oReq.open("get", "get-data.php", true);
    oReq.send();

    // trying to use angularjs to display data in the html table
    var app = angular.module('myApp', []);

    app.controller('myController', function($scope, $http) {
            $http.get('get-data.php').then(function(response) {
                    $scope.items = response.items;
            });
    });
</script>
</body>
</html>

Код PHP:

<?php

try {

    $mng = new MongoDB\Driver\Manager("mongodb://localhost:27017");
    $query = new MongoDB\Driver\Query([]);

    $rows = $mng->executeQuery("comments.comments", $query);

    $items = array();
    foreach ($rows as $row) {
        array_push($items, $row);
        #echo "$row->name : $row->price\n";
    }

     echo json_encode($items);

} catch (MongoDB\Driver\Exception\Exception $e) {

    $filename = basename(__FILE__);

    echo "The $filename script has experienced an error.\n";
    echo "It failed with the following exception:\n";

    echo "Exception:", $e->getMessage(), "\n";
    echo "In file:", $e->getFile(), "\n";
    echo "On line:", $e->getLine(), "\n";
}

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