Php 使用Rest POST将数据从angularjs表单发送到symfony2

Php 使用Rest POST将数据从angularjs表单发送到symfony2,php,mysql,angularjs,rest,symfony,Php,Mysql,Angularjs,Rest,Symfony,我正在学习本教程,但我有一个angularjs的客户端和一个带有symfony的RESTAPI 我的问题是,我仍然不知道如何将angularjs表单中的数据发送到symfony2的控制器,然后再发送到数据库Mysql 更新: 我知道如何将客户端控制器中的数据静态地添加到数据库中,但如何使用th angularjs表单中的值 public function insertAction() { $client = new Client(); $client->setName('c

我正在学习本教程,但我有一个angularjs的客户端和一个带有symfony的RESTAPI

我的问题是,我仍然不知道如何将angularjs表单中的数据发送到symfony2的控制器,然后再发送到数据库Mysql

更新: 我知道如何将客户端控制器中的数据静态地添加到数据库中,但如何使用th angularjs表单中的值

public function insertAction()
    {
$client = new Client();
    $client->setName('cccccccc');
    $client->setAdress('ffffffff');
    $client->setCivilit('sssssssss');
    $em = $this->getDoctrine()->getManager();
    $em->persist($client);
    $em->flush();

    return new Response('Id du client créé : '.$client->getId());
这是app.js,我在其中定义了控制器:

.controller('PostsCtrlAjax1', ['$scope', '$http' ,function($scope,$http) {

   $http({method: 'POST', url: 'http://localhost/operation/web/app_dev.php/apiclient/insertcl.json'})
   .success(function(data){
        $scope.posts = data; // response data 
   }).error(function(data, status, headers, config) {
    // called asynchronously if an error occurs
    // or server returns response with an error status.
    console.log("data error ...");
  });
}]);
当我运行客户端angularjs时,静态数据将存储在数据库中
如果您有任何想法,请提供帮助。

因此,要将数据从angularJS客户端存储到symfony2服务器,您必须执行以下操作:

在Symfony中安装一个简单的侦听器来处理json请求

客户端表单(示例)

存储操作(服务器)

如果要为重载作用域变量返回数据,请将以下内容添加到方法中:

//...
$clients = $em->getRepository('YourBundle:Client')->findAll();
//...
并将您的报税表更改为:

//...
return new JsonResponse($clients);
然后,返回的响应将包含您的数据,并且$scope.posts将用新注册的数据刷新。

您可以使用以下方法:

$info = $request->getContent();
$data = json_decode($info,true);
然后使用:
$client->setName($data['name'])

您需要显示您的代码和您尝试过的内容,例如可能的错误消息。您好@bcesars,我知道如何静态插入数据,如下所示:
//...
$clients = $em->getRepository('YourBundle:Client')->findAll();
//...
//...
return new JsonResponse($clients);
$info = $request->getContent();
$data = json_decode($info,true);