корзина покупок — PHP отображает обновленные значения

количество представляет собой массив предметов

<td>
<input type="text" size="4" name="qty[<?php echo $pro_id;?>]"style="text-
align:center" value="<?php echo $_SESSION['qty']; ?>">

</td>
<?php

функция обновления работает отлично

if(isset($_POST['update'])) {
$ip=getIp();
$sql = "UPDATE cart SET qty=? where p_id=? and ip_add=?";
$stmt = mysqli_prepare($con, $sql);
foreach ($_POST['qty'] as $pro_id=>$qty) {
$stmt->bind_param("iis", $qty, $pro_id, $ip);
$stmt->execute();
}
}

это то, что я использовал для отображения нового количества, но значения отображаются в неправильном поле продукта

$sql = $con->query("select * from cart where p_id='$pro_id'");
$row=$sql->fetch_array(MYSQLI_BOTH);
$_SESSION['qty']=$row['qty'];
?>

кнопка, которая обновляет корзину

<td><input type="submit" name="update" value="Update quantity"></td>
<td><button style="height:20px;width:128px">
<a href="index.php"style="color:black">Continue Shopping</a></button></td>
<td><button><a href="checkout.php" style="color:black">Checkout</a></button>
</td>
</table>

0

Решение

Когда количество является массивом, а данные в базе данных верны, вам нужно количество SESSION как массив!

Попробуй это:

$sql = $con->query("select * from cart where p_id='$pro_id'");
$row=$sql->fetch_array(MYSQLI_BOTH);
$_SESSION[$pro_id]['qty']=$row['qty'];

и это

<td>
<input type="text" size="4" name="qty[<?php echo $pro_id;?>]"style="text-
align:center" value="<?php echo $_SESSION[$pro_id]['qty']; ?>">

</td>
<?php
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector