为什么会话中丢失数据?
问题描述:
将会话传递给数组并使用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>
答
看你的代码,并采取刺伤在黑暗中,我看不到任何地方session_start()
。试着把这个放在你的PHP代码的顶部:
session_start();
+0
我会在后面加上'session_start();'和'ob_start()'。另外需要指出的是,当你使用类似cms的软件时,不要将session_starts()添加到函数中,而是放在core-file之上。 – 2011-08-18 14:29:33
你能解释一下你的代码是干什么的吗? – Gumbo 2010-02-28 12:57:01
我不确定这是否是一个问题。你能否以更可读的方式重述这个问题? – mattbasta 2010-02-28 21:08:39