我有一個網上商店我購物車一些困難。在我的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。
Thx!
首播時間:它必須是如果(!in_array ...)當然。這是這樣的,但我想看看我的$ _session ['cartArr']是什麼,所以我刪除了「!」忘了把它放回去.. –
我明白你的意思是順便說一句,但我以前都做過。我知道我需要進入我的tpl文件,但我只是沒有做到這一點(不知道方式,以上解決方案無法正常工作。) –
@WarreBuysse好的,我編輯了我的文章 – jbrtrnd