所以我有一個購物車,工作正常,但我想顯示在每個循環以外的聯繫表單中的購物車的結果。如何顯示每個循環之外的數組?
我遇到的問題是每當我嘗試顯示$ Ptitle它只顯示最後一個添加到購物車。不是數組中標題的完整列表。我試過各種方法來顯示數組結果,但似乎沒有工作。看來我可以通過打印陣列
print_r ($contents);
但是隻在每個循環內部,而不是外部。 下面是代碼,很抱歉,如果它很混亂。任何幫助,將不勝感激。
謝謝!
function showCart() {
global $db;
$cart = $_SESSION['cart'];
if ($cart) {
$items = explode(',',$cart);
$contents = array();
foreach ($items as $item) {
$contents[$item] = (isset($contents[$item])) ? $contents[$item] + 1: 1;
}
echo '<form action="http://www.changecompanies.net/dev/theme/cart_checkout.php?action=update" method="post" id="cart">';
//$output[] = '<table>';
?>
<table id="cart">
<tr>
<th>Quantity</th>
<th></th>
<th>Item</th>
<th>Product Type</th>
<th>Unit Price</th>
<th>Total</th>
<th>Remove</th>
</tr>
<?php
foreach ($contents as $id=>$qty) {
$sql = 'SELECT * FROM tccproducts WHERE id = '.$id;
$result = $db->query($sql);
$row = $result->fetch();
extract($row);
$result = mysql_query("SELECT * FROM tccproducts WHERE Pid ='$id'")or die (mysql_error());
//if (!$result);
//echo "no result";
$myrow = mysql_fetch_array($result) or mysql_error('error!');
$name = $myrow['Ptitle'];
//$name = substr($name,0,40);
$Pprice = $myrow['Pprice'];
$Ptitle = $myrow['Ptitle'];
$Pimage = $myrow['Pimage'];
$Pcat = $myrow['Pcategory'];
$mini = $myrow['Pminimum'];
休息只是顯示購物車,並結束每個循環。
爲什麼你不能將數組轉儲到foreach循環之外? –
這就是我的問題星際....我可以顯示數組,但我不知道如何從它得到正確的值...例如,我可以顯示'Pids'A9,A9,A9,B12,B12 ,如果每個產品有3種,B12也是如此。但是,如何挖掘這些數字,並將標題,價格以及購物車上列出的其他所有內容顯示爲電子郵件消息? – Zanrok