在 Angular JS 中通过 $http.post 方法传递对象数组不起作用[重复]

问题描述 投票:0回答:1

我的目标是使用

merchandise.php
方法将对象数组从我的主
process_cart.php
文件传递到另一个
$http.post
文件。 (请注意,这是 AngularJS,而不是 Angular)。我想使用 foreach 循环在接收数组时显示购物车的内容。

这就是我的函数的样子。

Cart
是一个 JavaScript 数组。

$scope.processCart=function(){ 
    $http.post('process_cart.php', { cart: JSON.stringify(cart) })
    .then(function() {
    })
    .catch(function(error) {
        console.error(error);
    });
    }
      });

至于我的

process_cart.php
文件,它看起来像这样:

$cart = json_decode($_POST['cart'], true);

if (!empty($cart)) {
    foreach ($cart as $item) {
        $productId = $item['productId'];
        $quantity = $item['quantity'];

        echo "Product ID: $productId, Quantity: $quantity <br>";
    }
} else {
    echo "Cart is empty.";
}

第二个文件中的 cart 变量无法识别。我哪里错了?另外,还有其他信息需要分享吗?

php angularjs http
1个回答
0
投票

而不是这个:

$cart = json_decode($_POST['cart'], true);

试试这个:

$cart = file_get_contents("php://input");
© www.soinside.com 2019 - 2024. All rights reserved.