繁体   English   中英

AngularJs,Ionic:$http.get 不起作用

[英]AngularJs, Ionic: $http.get does not work

我正在尝试使用 php 文件从 mysql 数据库加载数据,然后将结果加载到我的 angularjs 文件中。 但是,它不起作用。 我使用 .get() 函数在 $http 服务中进行了尝试。

配置文件:

<?php
define('HOST','localhost');
define('NAME','test');
define('USER','root');
define('PW','');

$mysqli = new mysqli(HOST,USER,PW,NAME);
if(mysqli_connect_errno())
{
 //echo("Failed to connect, the error message is: ".mysqli_connect_error());
 exit();
}
else
{
 //echo "Connection success";
}
?>

加载数据库.php:

  <?php
require_once'config.php';

$query = "select * from lebensmittel";
$result = $mysqli->query($query);

if(mysqli_num_rows($result) > 0)
{
    echo " Tupels vorhanden";
    while ($row = $result->fetch_assoc()) 
    {
        $data[] = $row;
    }
}

header('Content-Type: application/json');
echo json_encode($data);
?>

控制器.js:

angular.module('starter.controllers', [])
.controller('AppCtrl', function ($scope, $ionicModal, $timeout, $http) {

   $scope.items = [];

   function loadData()
   {
       $http.get("http://localhost/4n/db_zugriff/loadDatabase.php").success(function (data) {
           $scope.items = data;
       }).error(function () {
           console.log("Error: can't load from php");
       });
   }

   loadData();

/*
$scope.items = [
   { id: 1, name: 'milk', date: '01-01-2016', amount: 1000 },
   { id: 2, name: 'cheese', date: '01-01-2016', amount: 250 },

];
   */

});

输出.html:

<ion-view view-title="Output">
    <ion-content data-ng-app="starter" ng-controller="AppCtrl">

        <ion-list >
            <ion-item ng-repeat="item in items">
                {{item.name}} {{item.date}}
            </ion-item>
        </ion-list>

    </ion-content>
</ion-view>

我怎样才能解决这个问题? 我感谢您的帮助!

你的 ng-app 错了,应该是

  <ion-content data-ng-app="starter.controllers" ng-controller="AppCtrl">

还有一个像这样声明的函数并在 ng-init 中调用它,

$scope.loadData = function()
{
 $http.get("http://localhost/4n/db_zugriff/loadDatabase.php").success(function                                                     (data) {
           $scope.items = data;
       }).error(function () {
           console.log("Error: can't load from php");
       });
    });
}

HTML:

  <ion-view view-title="Output">
        <ion-content data-ng-app="starter.controllers" ng-controller="AppCtrl">
            <ion-list ng-init="loadData()">
                <ion-item ng-repeat="item in items">
                    {{item.name}} {{item.date}}
                </ion-item>
            </ion-list>
        </ion-content>
    </ion-view>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM