2017-01-18 11 views
0

私はphpを使用してデータベースからデータを取得しようとしています。そのデータはWebページに表示されます。ページの読み込み時にデータを自動的に取得するにはどうすればよいですか?

formApp.controller('getsettings', function($scope,$http){ 
     $scope.formData = {}; 

     $scope.getsettings = function() { 
      var allData={'uid': uid} 
     $http({ 
       method : 'POST', 
       url  : 'get_settings.php', 
       data : allData, 
       headers : { 'Content-Type': 'application/x-www-form-urlencoded' } 

      }) 
       .success(function(data) { 

        if (!data.success) { 
         $scope.fname = data.fname; 
         $scope.lname = data.lname; 
         $scope.mobile = data.mobile; 

        }else{ 
         $scope.fname = ''; 
         $scope.lname = ''; 
         $scope.mobile = ''; 

        } 
       }); 

     }; 

    }) 

上記のコードは発火していません。私はイベントがないネットワークタブをチェックした。
イベントを発生させるにはどうすればいいですか?どんなアドバイスをしているのですか?

私が持っているもう1つの質問は、私が人々が角度のPOSTの代わりにGETを使用しているのを見ている多くの場所です。何故ですか?

+1

$ scope.getsettings()を呼び出します。そしてGETやPOSTをうまく使うことができます。 POSTがデータを使用している間は{}のparamsを使うことを覚えておいてください:{}。 – user2263572

答えて

2

関数$scope.getsettingsを実装しましたが、どこにも呼び出されていません。

実装後すぐに$scope.getsettings()でこの関数を呼び出したり呼び出すことができます。コントローラがブラウザにロードされると、この関数が呼び出されます。

EDIT:あなたのコメントに応えて

は - JSのコードを修正:

formApp.controller('getsettings', function($scope,$http){ 
    $scope.formData = {}; 

    $scope.getsettings = function() { 
    var allData={'uid': uid} 
    $http({ 
     method : 'POST', 
     url  : 'get_settings.php', 
     data : allData, 
     headers : { 'Content-Type': 'application/x-www-form-urlencoded' } 

    }) 
     .success(function(data) { 

     if (!data.success) { 
     $scope.fname = data.fname; 
     $scope.lname = data.lname; 
     $scope.mobile = data.mobile; 

     }else{ 
     $scope.fname = ''; 
     $scope.lname = ''; 
     $scope.mobile = ''; 

     } 
    }); 

    }; 

    // now call/invoke function $scope.getsettings 
    $scope.getsettings(); 

}); 
+0

私は体に置く必要があるという意味ですか?どこに? – Ironic

+0

@CalculatingMachine更新された回答を確認してください。 –

+1

ありがとうございます。出来た。 – Ironic

1

問題は、あなたが$scope.getSettings関数を呼び出していないです。あなたは単にそれを作成しました。あなたは$scope.greetings()によってそれを呼び出すことができます。または、あなたのビューでそれを使用したい場合は、次のようなことができます:<button ng-click="getSettings()">Get Setting</button>

+0

ボタンクリックではなく自動的にロードしたい。ページがロードされるたびにデータをロードする必要があります。投票した。 – Ironic

+0

私はRahulがすでにあなたが望むものを説明したと思います。 –

関連する問題