使用我的PHP服务将AngularJS连接到mysql?

noo*_*rub 6 php mysql angularjs

我在我的Mac上使用AngularJS 1.0,PHP和mysql与localhost.

我有一个非常简单的mysql数据库:"cats".它有一个名为"小猫"的表.该表有两列,"id"和"name".数据库中有三只小猫,名字叫Larry,Curly和Moe.

现在,我有一些简单的PHP代码打开dbase,获取三条记录,并以JSON方式返回它们:[{"id":"1","name":"Larry"},{"id": "2", "姓名": "卷毛"},{ "ID": "3", "名称": "萌"}]

我使用了最新的angular-seed并在Eclipse中设置了一个项目.在app.js中我写了这个:'use strict'; angular.module('Cats',['ngResource','Cats.filters','Cats.services','Cats.directives'])我将我的PHP代码放在services文件夹中,并将其命名为"index.php".如果我在Mac上使用localhost导航到我的浏览器中的services/index.php,我会回到上面的JSON.到目前为止一切都很酷.

现在 - 我想做的事情(!着名的最后一句话;)是连接到我拥有的PHP服务,并使用我的AngularJS项目在我的主索引页面上显示该Cats表的内容.普通的旧文本,没有表,只需绑定到可用资源并显示它.

我已经尝试过各种各样的在线演示(很多已经过时了).有谁能告诉我一个简单的,当前的方式来做到这一点?对于我的生活,我有各种各样的AngularJS演示工作,但他们都没有以我能理解的方式完成这个简单的任务.

先感谢您.

Noa*_*tas 4

这也应该有效。代码行数明显减少,但请注意,任何错误处理都已被删除:

function FetchCtrl($scope, $resource) {
  var services = $resource('../services/index.php');
  $scope.data = services.query();
}
FetchCtrl.$inject = ['$scope', '$resource'];
Run Code Online (Sandbox Code Playgroud)

通常我会使用内置.get()方法,但$resouce您的响应是数组的形式,.query()默认情况下支持。

您可以$resource这里找到文档