我有一个在会话中存储数组的站点。项目被添加到数组中,并且数组循环显示项目。
在我本地的 XAMPP 上它工作正常,但现在我已经上传了它,它显示出一些奇怪的行为。
我的数组应该是这样的:
Array
(
[bag] => Array
(
[0] => Array
(
[item_id] => 4
[stock_id] => 7
[quant] => 1
)
)
)
在我添加一个项目之后,它会在点击几下后变成这样:
Array
(
[bag] => 1
)
出现错误:
Warning: Invalid argument supplied for foreach() in /public_html/xxx.php on line xx
对于 php .ini 配置或类似的配置,我应该注意一些会话设置吗?(如果有帮助,我正在使用 Hostgator)
我将项目添加到数组的一种简化方式-
function AddBag()
{
//get info
$item_id = $_POST['item_id'];
$quant = $_POST['quant];
$stock_id = $_POST['stock_id];
if (isset($_SESSION['bag'])) {$bag_array = $_SESSION['bag'];}
else {$bag_array = array();}
//add item into array
$new_item = array("item_id" => $item_id, "stock_id" => $stock_id, "quant" => $quant);
array_push($bag_array, $new_item);
//update session with new array
$_SESSION['bag'] = $bag_array;
}