无法弄清楚为什么AngularJS不会从PHP

时间:2016-02-08 19:26:29

标签: php angularjs json mysqli

我花了好几个小时试图解决这个问题并浏览网页,但我一定做错了。每次加载页面时,它都是空白的。 我正在尝试将数据库从mysqli加载到angularjs。 代码完全从W3练习中复制,所以我不知道问题出在哪里。

dbaseread.php与html位于同一文件夹中。

PHP:

 $query = "SELECT * FROM members";
    $result = $mysqli->query($query);
    $r = array();
    if( $result->num_rows>0){
    while($row = $result->fetch_assoc()){
    $r[] = $row;
    }
    }


    $res = json_encode($r);

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

    echo $res;

HTML

<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>

<div ng-app="myApp" ng-controller="customersCtrl"> 

<ul>
  <li ng-repeat="x in myData">
    {{ x.name }}
  </li>
</ul>

</div>

<script>
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
  $http.get("dbaseread.php").then(function (response) {
      $scope.myData = response.data.records;
  });
});
</script>

</body>
</html>

1 个答案:

答案 0 :(得分:0)

  

尝试$scope.myData = response.data。看起来不像records   php中的属性。在then里面可以放   console.log(response.data)然后在浏览器控制台中查看是什么   实际上回来了

- charlietfl

确实没有任何“记录”属性,因此删除它会解决问题。