我有一个简单的购物车阵列。我可以添加Id罚款。但是,每次我提交表格时,它都会覆盖现有价值? 阻止这种情况发生的最佳方法是什么?以下是提交表单的示例
session_start();
$id = filter_var($_POST['Phone-ID'], FILTER_SANITIZE_NUMBER_INT);
$Phone_Title = filter_var($_POST['Phone-title'], FILTER_SANITIZE_STRING);
$Phone_Price = filter_var($_POST['Phone-price'], FILTER_SANITIZE_STRING);
$Phone_Quantity = filter_var($_POST['quantity'], FILTER_SANITIZE_NUMBER_INT);
$_SESSION['cart']['Id'] = array();
$_SESSION['cart']['Id'] = $id;
var_dump($_SESSION['cart']);
答案 0 :(得分:3)
删除此行$_SESSION['cart']['Id'] = array();
(因为它会一次又一次地重新创建空数组)
您需要每次都使用new-index为数组赋值。所以这样做: -
$_SESSION['cart']['Id'][] = $id;
注意: - 使用您的代码,它总是覆盖id
数组中提供的第0个索引$_SESSION['cart']['Id']