以下のコードがありますが、問題はそれが機能しないことです。このコードは、ユーザーが入力した量を更新するためのものです。
IF I echo$type $size $quantity
値が送信されたことがわかります。
foreach ($_SESSION["cart_array"] as $array_key=>$each_item)
問題はこれにあると思いますが、見えないようです。
誰かが見て、問題を見つけることができるかどうかを確認してください。ありがとう
問題
更新するフォームに数値を入力した場合。更新されません。
PHP
<?php
session_start();
?>
<?php
if (isset($_POST['item_to_adjust']) && isset($_POST['size']) && isset($_POST['type'])) {
$item_to_adjust = $_POST['item_to_adjust'];
$type = $_POST['type'];
$size = $_POST['size'];
$quantity = $_POST['quantity'];
$quantity = preg_replace('#[^0-9]#i', '', $quantity); // filter everything but numbers
if ($quantity >= 100) { $quantity = 99; }
if ($quantity < 1) { $quantity = 1; }
if ($quantity == "") { $quantity = 1; }
$i = 0;
foreach ($_SESSION["cart_array"] as $array_key=>$each_item) {
$i++;
if ($each_item['item_id'] == $item_to_adjust && $each_item['size'] == $size && $each_item['type'] == $type) {
$_SESSION["cart_array"][$array_key]['quantity']+=$quantity;
}
}
}
?>
HTML
<form action="cart.php" method="post">
<input name="quantity" type="text" value="' . $each_item['quantity'] . '" size="1" maxlength="2" />
<input name="adjustBtn' . $item_id . '" type="submit" value="Update" />
<input name="size" type="hidden" value="' . $each_item['length'] . '" />
<input name="type" type="hidden" value="' . $each_item['Category'] . '" />
<input name="item_to_adjust" type="hidden" value="' . $item_id . '" />
</form>