猿问

php 將兩個不同 array 算出個別的價格並加總?

假設前端為

<input type="hidden" name="cart_prod_id[]" value="<?=$row['prod_id'];?>">
<input type="hidden" name="cart_quantity[]" value="<?=$row['quan'];?>">

後端

foreach($_POST["cart_prod_id"] as $value){
   echo $value;
}
foreach($_POST["cart_quantity"] as $value){
   echo $value;
}

送出後可以得到假設

11510612910751031

但其實是

// 商品ID
115
106
129
107

// 數量
5
10
3
1

我要先找出商品ID,去找他自己的 price
之後再回來乘上對應的數量

// 商品ID -> 數量
115 -> 5
106 -> 10
129 -> 3
107 -> 1

請問我該怎麼算出每個商品價格並加總?!
我的作法是這樣
但都只會算最後那一筆

$i = 0;
$productTotal = null;
foreach($_POST["cart_prod_id"] as $value){
      $product = mysqli_fetch_array($pdo->query(
        "SELECT
          p.price,
          p.original_price
        FROM `product` as p
        WHERE p.prod_id = '{$value}' "
      ));

      $productTotal += $product['price'] * $_POST["cart_quantity"][$i];

      $i++;
    }
    
echo $productTotal;

思路已死,懇請大神降臨

慕姐4208626
浏览 303回答 1
1回答
随时随地看视频慕课网APP
我要回答