你好,所以我的头文件中有一个session_start,这是每个php文件中都需要的。在我的头文件中,我有一个购物车图标,显示我的购物车文件中的商品数量。
我遇到的问题是购物车图标不显示当前的商品数量,除非在商品添加到购物车后再次刷新。
刷新购物车和图标后均等于20
header.php(包含会话开始)
<i class="fa fa-shopping-cart fa-3x" aria-hidden="true">
<?php
echo ($_SESSION['$q']);
?>
</i>
cart.php(需要header.php)
<?php
$cart = json_decode(json_encode($_SESSION['cart']));
$_SESSION['$s'] = 0;
$_SESSION['$q'] = 0;
$index = 0;
for($i = 0; $i < count($cart); $i++)
{
$_SESSION['$s'] += $cart[$i]->price * $cart[$i]->quantity;
$_SESSION['$q'] += $cart[$i]->quantity;
?>
我做错了什么?我知道我可以在添加项目时刷新页面,但我想远离使用它。
答案 0 :(得分:1)
取决于您是否使用javascript / ajax将产品添加到购物车?如果您是,则页面已经呈现,因此购物车不会更改 - 您需要使用js手动更新购物车数量或进行页面刷新。
如果您不使用JS添加产品,那么在更新该会话中的新数量之前,您可能正在访问标题中的会话