2010-02-28 153 views
-2

將會話傳遞給數組並使用foreach(循環)時數據丟失。丟失的數量是來自另一個頁面的文字爲什麼會丟失這個? 使用循環的ID從獲取到刪除的項目(在另一頁使用鏈接)爲什麼會話中丟失數據?

$cart = $_SESSION['cart']; 

$id = $_GET['id']; 

$arrcart = array(); 

$count=0; 
    $qty = intval($_POST['product_'.$product['product_id']]); 

if($id) 
{ 
foreach($cart as $keys) 
{ 
if($id != $keys['product_id']) 
{ 
     $arrcart[$count]=array('qty' => $qty, 
          'product_id' => $keys['product_id'],  
          "name" => $keys['name'], 
          "description" => $keys['description'], 
          "price" => $keys['price'], 
          "total" => $keys['price']*$qty 
          ); 
} 
     $count++; 
}`enter code here` 
$_SESSION['cart']=$arrcart; 
} 
</code> 
+0

你能解釋一下你的代碼是幹什麼的嗎? – Gumbo 2010-02-28 12:57:01

+0

我不確定這是否是一個問題。你能否以更可讀的方式重述這個問題? – mattbasta 2010-02-28 21:08:39

回答

0

看你的代碼,並採取刺傷在黑暗中,我看不到任何地方session_start()。試着把這個放在你的PHP代碼的頂部:

session_start(); 
+0

我會在後面加上'session_start();'和'ob_start()'。另外需要指出的是,當你使用類似cms的軟件時,不要將session_starts()添加到函數中,而是放在core-file之上。 – 2011-08-18 14:29:33