Search code examples
angularjsfat-free-framework

How to save data values from form in angularjs using fat free framework


I am trying to save data in sql using fat free framework. i used front end in angularjs. i send data using angular ng-submit button. ajax Post data but not get in fat free please solve this problem. i am new in fat free.

here is my html code:

<form id="userRegister" name="registration" ng-submit="register1(formData)" ng-controller="Ctrl1">  
     <div class="sf-steps-form sf-radius"> 
        <div class="sf_columns column_3">
          <input ng-model="formData.email" id="email"  type="email"  name="email" placeholder="Email*"  data-required="true" >
        </div>
        <div class="sf_columns column_3">
            <input ng-model="formData.password" id="password" type="password" name="password" placeholder="Secret Word*"   data-required="true" >
        </div>
    </div>
    <button type="submit" id="sf-next" class="sf-button">Save</button>
</form>  


here is my app.js code:

sampleApp.controller("Ctrl1", function($scope, $http) {
    $scope.formData = {};
    $scope.register1 = function() {
        console.log($scope.formData);
    $http({
      method  : 'POST',
      url     : 'addstep',
      data    : $scope.formData, 
      headers : {'Content-Type': 'application/x-www-form-urlencoded'} 
     })
      .success(function(data) {
        if (data.errors) {
           $scope.errorEmail = data.errors.email; 
          $scope.errorPassword = data.errors.password;
        } else {
          $scope.message = data.message;
        }
      });
    };
});

here is my idex.php fat free framework code:

    $f3->route('GET|POST /addstep',
    function($f3) {  

        //print_r($f3);
        $users = new DB\SQL\Mapper($f3->get('DB'),'user');

        $users->copyFrom('POST');
        $users->save();
        $f3->set('content','step1.htm');
        echo View::instance()->render('layout.htm');
    }
);

The ajax post data properly but not save in db please help.

Solution

  • Check $f3->get('BODY'); You might need to json_decode;

    Most likely the data is sent via PUT