ng-repeat не читает результаты SQL-файла json - PullRequest
0 голосов
/ 27 мая 2018

Привет, поэтому я довольно много скопировал этот код, и он не работает для меня, но работает для других людей (весь HTML и PHP). Когда я пытаюсь выполнить запрос в SQL Management, он работает, поэтому я нене думаю, что это база данных Когда я пытаюсь прочитать из базы данных, это просто пусто, без ошибок в консоли Вот мой select.php:

<?php  
 //select.php  
 $connect = mysqli_connect("den1.mssql5.gear.host", "testiranje", "nijebitno@", "testiranje");  
 $output = array();  
 $query = "SELECT * FROM dbo.tbl_user";  
 $result = mysqli_query($connect, $query);  
 if(mysqli_num_rows($result) > 0)  
 {  
      while($row = mysqli_fetch_array($result))  
      {  
           $output[] = $row;  
      }  
      echo json_encode($output);  
 }  
 ?>  

А вот мой индекс.html:

<!DOCTYPE html>  
<!-- index.php !-->  
<html>  
     <head>  
          <title>Webslesson Tutorial | AngularJS Tutorial with PHP - Fetch / Select Data from Mysql Database</title>  
          <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />  
          <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>  
     </head>  
     <body>  
          <br /><br />  
          <div class="container" style="width:500px;">  
               <h3 align="center">AngularJS Tutorial with PHP - Fetch / Select Data from Mysql Database</h3>  
               <div ng-app="myapp" ng-controller="usercontroller" ng-init="displayData()">  
                    <label>First Name</label>  
                    <input type="text" name="first_name" ng-model="firstname" class="form-control" />  
                    <br />  
                    <label>Last Name</label>  
                    <input type="text" name="last_name" ng-model="lastname" class="form-control" />  
                    <br />  
                    <input type="submit" name="btnInsert" class="btn btn-info" ng-click="insertData()" value="ADD"/>  
                    <br /><br />  
                    <table class="table table-bordered">  
                         <tr>  
                              <th>First Name</th>  
                              <th>Last Name</th>  
                         </tr>  
                         <tr ng-repeat="x in names">  
                              <td>{{x.first_name}}</td>  
                              <td>{{x.last_name}}</td>  
                         </tr>  
                    </table>  
               </div>  
          </div>  
     </body>  
</html>  
<script>  
var app = angular.module("myapp",[]);  
app.controller("usercontroller", function($scope, $http){  
     $scope.insertData = function(){  
          $http.post(  
               "insert.php",  
               {'firstname':$scope.firstname, 'lastname':$scope.lastname}  
          ).success(function(data){  
               alert(data);  
               $scope.firstname = null;  
               $scope.lastname = null;  
               $scope.displayData();  
          });  
     }  
     $scope.displayData = function(){ 
         $scope.names = new Array;
          $http.get("select.php")  
          .success(function(data){  
        console.log("sranje");
            $scope.names = data;  
            console.log(data);

          });  
     }  
});  
</script>  

1 Ответ

0 голосов
/ 27 мая 2018

Вы можете попробовать добавить

header('Content-type: application/json');

перед вашим эхо в функции php.Таким образом, вы «говорите», что ваша функция php возвращает данные json.

<?php  
 //select.php  
 $connect = mysqli_connect("den1.mssql5.gear.host", "testiranje", "nijebitno@", "testiranje");  
 $output = array();  
 $query = "SELECT * FROM dbo.tbl_user";  
 $result = mysqli_query($connect, $query);  
 if(mysqli_num_rows($result) > 0)  
 {  
      while($row = mysqli_fetch_array($result))  
      {  
           $output[] = $row;  
      }
      header('Content-type: application/json');
      echo json_encode($output);  
 }  
 ?>  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...