添加的项目是不添加到购物车与json文件和表单的使用

pieyvz9o  于 2023-02-14  发布在  其他
关注(0)|答案(1)|浏览(137)

我正在用php为一个学校项目做一个网上商店。我现在正在做购物车和产品页面,但是当我把一个产品加到购物车里的时候,它实际上并没有被加到购物车里。我花了很多时间寻找解决方案,但是我不能修复它。我希望任何人可以帮助我解决这个问题。
这是我的产品页面代码:

session_start();
<section id="products">
    
    <div class="products-container">
    <?php
    // Read the JSON file
    $jsonData = file_get_contents('js/products.json');
    $products = json_decode($jsonData, true);
    
    // Initialize cart as an empty array
    $cart = array();
    
    
    // Loop through each product and display its information
    foreach ($products as $product) {
        echo '<div class="product-container">';
        echo '<div class="product-cart">';
        echo '<img class= "productimage" src="' . $product['image'] . '" alt="' . $product['name'] . '">';
        echo '<h3>' . $product['name'] . '</h3>';
        echo '<p>' . $product['description'] . '</p>';
        echo '<p class="price">Price: ' . $product['price'] . '</p>';
        echo '<form method="post" class="add-to-cart-form">';
        echo '<input type="hidden" name="id" value="' . $product['id'] . '">';
        echo '<input type="number" name="quantity" value="1" min="1">';
        echo '<button type="submit" class="add-to-cart-btn">Add to Cart</button>';
        echo '</form>';
        echo '</div>';
        echo '</div>';
    }
?>

    </div>
</section>

正如你所看到的,我使用一个json文件来存储我的产品。我将提供这个文件的一部分,这样你就可以看到它的内容:

[
    {
        "name": "Gucci Bloom",
        "price": "€120.00",
        "image": "./pictures/gucci-Bloom.png",
        "description": "Een bloemig en houtachtig parfum voor vrouwen",
        "id": 1
    },
    {
        "name": "Dior Homme",
        "price": "€70.00",
        "image": "./pictures/dior-Homme.png",
        "description": "Een houtachtig en kruidig parfum voor mannen",
        "id": 2

    }
]

接下来是我最纠结的部分,购物车页面,这是我目前拥有的东西:

<section class="productcart">
<div class="cart-card">
<table class="cart-table">
  <tr>
    <td></td>
    <td>Product</td>
    <td>Prijs</td>
    <td>Hoeveelheid</td>
    <td>Totale prijs</td>
  </tr>

  <?php

$jsonData = file_get_contents('js/products.json');
    $products = json_decode($jsonData, true);
  $cart = array();
  foreach ($cart as $products){
  echo '<tr>';
  echo '<td><img class= "productimage" src="' . $product['image'] . '" alt="' . $product['name'] . '"></</td>';
  echo '<td><h3>' . $product['name'] . '</h3></td>';
  echo '<td><p class="price">' . $product['price'] . '</p></td>';
  echo '<td><p>' . $product['amount'].'</p></td>';
  echo '<td><p>' . $product['price'] * $product['amount']. '</p></td>';
  echo '</tr>';
}
 
  ?>

</table>
</div>
</section>

我希望任何人都能帮助我解决这个问题。

j8ag8udp

j8ag8udp1#

您正在迭代空的$cart数组:foreach($购物车为$产品){...
但是您希望像foreach($products as $product){...}一样迭代产品数组。

相关问题