2017-07-14 78 views
0

我试图创建使用angularJS数据库的连接。我使用$http.get用于与PHP服务器

控制器

var oke = angular.module('secondApp',[]); 
      oke.controller('dataAdmin',function(){ 
      return{ 
       controller : function($scope,$http){ 
       $scope.displayData = function(){ 
       $http.get('db.php').success(function(hasil){ 
        $scope.datas=hasil; 

       }); 
       console.log($scope.datas); 
       } 
       } 
      }; 
      }); 

HTML

<div ng-controller="dataAdmin" ng-init="displayData()" ng-app="secondApp"> 
     <input type="text" ng-model="hasil" placeholder="Search" style="margin-left:2%;margin-bottom:5px;"/> 
     <ul> 
      <li ng-repeat="nt in datas | filter:hasil | orderBy:'username'"> 
      Username : {{nt.username}} | Password : {{nt.password}} 
      </li> 
     </ul> 
    </div> 
+0

你这是在控制台中得到些什么? –

回答

0

控制器代码需要一些改动:

var oke = angular.module('secondApp',[]); 
    oke.controller('dataAdmin', ̶f̶u̶n̶c̶t̶i̶o̶n̶(̶)̶{̶ 
    ̶r̶e̶t̶u̶r̶n̶{̶ 
     ̶c̶o̶n̶t̶r̶o̶l̶l̶e̶r̶ ̶:̶ function($scope,$http){ 
     $scope.displayData = function(){ 
      $http.get('db.php'). ̶s̶u̶c̶c̶e̶s̶s̶ then(function(hasil){ 
      $scope.datas= ̶h̶a̶s̶i̶l̶;̶ hasil.data; 
      console.log($scope.datas); 
      }); 
     ̶c̶o̶n̶s̶o̶l̶e̶.̶l̶o̶g̶(̶$̶s̶c̶o̶p̶e̶.̶d̶a̶t̶a̶s̶)̶;̶ 
     }; 
     ̶}̶ 
    ̶}̶;̶ 
    }); 

console.log需要是.then方法内。

0

访问连接您的响应的数据

$http.get('db.php').then(function(hasil){ 
    $scope.datas=hasil.data; 
}); 
0

ŧ RY这样的:

$http.get('db.php').then(function(result){ 
    $scope.datas = result.data; 
}, function(err){ 
    console.log(err); 
}); 
0

console.log($scope.datas)会显示未定义的,因为它会得到响应之前运行,

写在你的成功调用此代码返回。它将显示值。

0

您需要访问数据你是响应内部得到。

$ scope.datas = hasil.data;