CodeIgniter没有收到POST数据

时间:2013-12-14 10:49:05

标签: php codeigniter angularjs restangular

我已经有一个基于Codeigniter的RESTful api服务,它可以对mySQL数据库执行基本的CRUD操作。现在我试图用angularJS和Restangular制作一个控制面板。

我发这样的POST请求:

HTML:

<form ng-submit="addUser()">
   <input type="text" name="name" ng-model="newUser.name" placeholder="Enter Your Name" />
   <input type="text" name="fact" ng-model="newUser.fact" placeholder="Enter A Fact" />
   <input class="pure-button" type="submit" value="Send" />
</form>

JS:

$scope.addUser = function ()
{
    var newuser = $scope.newUser;
    Restangular.one("user").post(newuser).then(function(data) {
      console.log(data);
    })
}

PHP(使用Codeigniter&#39; inpu类):

$data = array(
    'name' => $this->input->post('name'),
    'fact' => $this->input->post('fact')
);

然后它将$ data数组写入数据库。但在数据库中,值始终为0,这意味着$ data [&#39; name&#39;]和$ data [&#39; fact&#39;]为空。

我认为我应该在PHP中以不同的方式处理数据,但我该怎么做呢?或者POSTed数据的类型是什么?

1 个答案:

答案 0 :(得分:5)

$data = file_get_contents("php://input"); 
$data = json_decode($data,true); 

:)