我关注了this Lynda tutorial为了获得一个可用的 Ionic 应用程序,我还关注了 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
只会使所有数据消失,并且不会出现控制台或服务器错误。
此外,当我尝试从 URL 直接访问 js/Load_Data.php
时,我会立即重定向回 index.html
,并且浏览器会下载文件而不是运行它。我不知道为什么会发生这种情况,因为除了编码和打印 json 数据之外,该文件中没有代码。
如何修复我的代码,以便我的 Ionic 应用程序可以访问我的 MySQL 数据库?
最佳答案
你能检查一下吗:
data = JSON.parse(data);
$scope.artists = data.artists;
它在将数据
用作JSON对象之前对其进行解析。
关于php - Ionic 应用程序因 PHP 脚本而中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36782421/