使用php将Angularjs表单数据存储在数据库中

时间:2013-08-13 11:42:53

标签: php angularjs

我的index.html:

<form name="myForm" ng-controller="Ctrl" ng-submit="save(user)">
  <label>Name:</label>
  <input type="text" ng-model="user.name"/><br /><br />
  <label>Email:</label>
  <input type="text" ng-model="user.email"/><br /><br />
  <input type="submit" value="Submit"/>
</form>

的script.js

   function Ctrl($scope,$http)
   {

$scope.save = function(user)
{
   var data={
   name: user.name,
   email:user.email
        }
        console.log(data);
 $http.post("insert.php",data).success(function(data){
   console.log(data);
 });


}
 }      

insert.php

<? php

  $data = json_decode(file_get_contents('php://input'), true);
  if (json_last_error() === JSON_ERROR_NONE) {
  // use $data instead of $_POST
   print_r($data);

  ?>

这是我在数据库中存储表单数据的代码。 但它不起作用......我是angularjs的全新...我不知道我哪里出错了... 请帮帮我..

1 个答案:

答案 0 :(得分:2)

您有几个错误:

JS (您需要$scope链接您的变量)

$scope.save = function() {
   var data = {
      name: $scope.user.name,
      email: $scope.user.email
   }

   $http.post("insert.php", data).success(function(data, status, headers, config){

   });
}

<强> HTML

<form name="myForm" ng-controller="Ctrl" ng-submit="save()">
  <label>Name:</label>
  <input type="text" ng-model="user.name"/><br /><br />
  <label>Email:</label>
  <input type="text" ng-model="user.email"/><br /><br />
  <input type="submit" value="Submit"/>
</form>