我跟着this Lynda tutorial获得了一个可用的Ionic App,我也跟着this Lynda tutorial建立了一个带有一些PHP脚本的MySQL后端(顺便提一下,我强烈推荐这两个教程!)。现在我试图将我的Ionic应用程序连接到我的MySQL数据库。
Ionic应用程序当前从js/data.json
抓取数据,这只是JSON数据
在app.js
:
.controller('ListController', ['$scope', '$http', '$state',
function($scope, $http, $state) {
$http.get('js/data.json').success(function(data) {
$scope.artists = data.artists;
});
}]);
我编写了一个PHP脚本,显示与data.json
完全相同的内容。我认为这将是缩小两个教程之间差距的良好开端。
在Load_Data.php
:
$response = "";
//omitting code where I fill $response with all
//the same info as data.json
$json = json_encode($response);
printf("%s", $json);
我比较了data.json
和Load_Data.php
的输出,它们确实相同。我还使用了jsonlint来确保它是有效的json。但是,将js/data.json
替换为js/Load_Data.php
只会使所有数据消失,而不会出现控制台或服务器错误。
此外,当我尝试从网址直接转到js/Load_Data.php
时,我会立即重定向回index.html
,浏览器会下载文件而不是运行它。我不知道为什么会这样,因为除了编码和打印json数据之外,我在该文件中只有 no 代码。
如何修复我的代码,以便我的Ionic应用程序可以访问我的MySQL数据库?
答案 0 :(得分:0)
您可以查看:
data = JSON.parse(data);
$scope.artists = data.artists;
在将data
用作JSON对象之前解析{{1}}。