午後、
ウェブショップのショッピングカートに問題があります。私のcartArr(データベースから取得した製品のIDを持つ配列)には、購入した製品の正しいIDがあります。また、私の製品ページには、cartArr 内の適切な量のアイテムをカウントするショッピングカートがあります (これまでのところ非常に良好です)。
私が自分の製品を表示したいとき、彼は私が最後にクリックした製品のみを表示し、何かを購入した回数. 彼は私のセッション配列でそれを覚えていないので、論理的です。
私は自分の問題が何であるかを知っていますが、それを修正する方法がわかりません。
/*Shoppingcart.php*/
<?php
$id = '';
if(isset($_POST['shoppingCart']['btnSubmit']))
{
$id = $_POST['shoppingCart']['id'];
$productDAO = new ProductDAO();
$result = $productDAO->getProductById($id);
if( in_array($id,$_SESSION['cartArr']))
{
array_push($_SESSION['cartArr'], $id);
echo '<pre>';
print_r('Hallo');
echo '</pre>';
}
}
$smarty -> assign('arrProducts',$result);
$smarty -> assign('id',$id);
$smarty -> assign('cartArr',$_SESSION['cartArr']);
$smarty -> assign('product',$result)
/*Shoppingcart.tpl*/
{foreach $cartArr as $item}
<div class="winkelkarItem">
<img src="{$arrProducts.image}" class="winkelkarImgPosition"
alt="chimay" title="chimay"/>
<ul class="winkelkarBeschrijving">
<li>{$arrProducts.naam}</li>
<li>{$arrProducts.prijs}€</li>
<li><input class="winkelkarAmmount" type="text" value="2"/></li>
<li>7.08€</li>
</ul>
</div>
{/foreach}
/*SQL statement to get my products out of my database in a seperate file ProductDAO*/
public function getProductById($id)
{
try
{
$sql = 'SELECT *
FROM tblProduct
WHERE id = :id';
$stmt = $this->dbh->prepare($sql);
$stmt->bindValue(':id',$id);
$stmt->execute();
$result = $stmt->fetch();
}
catch(PDOException $e)
{
echo $e->getMessage();
}
return $result;
}
?>
すべての助けのために前もってThx。
短い: Arrproducts は私のセッションに入らなければなりません foreach を通して、アイテムを @ shoppingcart.tpl にする必要があります 私がクリックした製品の ID は cartArr にあります。
どうも!