2016-06-27 3 views
0

У меня есть массив в AngularJS, и я хочу пройти через $http, чтобы лечить в PHP (back-end), но не могу. Я могу передать $scope.myForm.shopList без каких-либо проблем, но когда я отправляю $scope.myForm, php не получает никаких данных.

Угловой:

goSoft.controller('createShop', function($scope, $http){ 
    $scope.myForm = []; 
    $scope.myForm.shopList = []; 

    $scope.shopListAdd = [{ 
    cod_prod : '', 
    ref_prod : '', 
    cant: '', 
    fabricante : '', 
    fecha_vence : '', 
    vr_compra:'', 
    vr_venta:'', 
    iva:'' 
    }]; 

    $scope.add = function(shopAdd) { 
    var index = $scope.shopListAdd.indexOf(shopAdd); 
    $scope.shopListAdd.splice(index, 1); 
    $scope.myForm.shopList.push(angular.copy(shopAdd)) 


    $scope.shopListAdd.push({ 
     cod_prod:'', 
     ref_prod:'', 
     cant: '', 
     fabricante : '', 
     fecha_vence : '', 
     vr_compra:'', 
     vr_venta:'', 
     iva:'' 
    }) 
    }     

    $scope.submitForm = function(){  

    $http.post('../compras/objCompra.php?type=1', {datos:$scope.myForm}).success(
     function(data){ 
     console.log(data); 
     }) 
    }}) 

PHP:

$json = json_decode(file_get_contents("php://input")); 
     print_r($json); 

ответ

0

Я решил, изменив ключи в $ scope.myForm = {}

$scope.myForm = {}; 
    $scope.myForm.shopList = []; 

    $scope.shopListAdd = [{ 
    cod_prod : '', 
    ref_prod : '', 
    cant: '', 
    fabricante : '', 
    fecha_vence : '', 
    vr_compra:'', 
    vr_venta:'', 
    iva:'' 
    }]; 

PHP, и я сделал это:

print_r($data = json_decode(file_get_contents("php://input"), true)); 
Смежные вопросы