У меня есть корзина, которую я храню в печенье.Файл cookie 'shopping_cart' устанавливается после добавления товара в корзину.
function shopping_cart_add(){
if(isset($_COOKIE['shopping_cart'])){
$cookie_data = $_COOKIE['shopping_cart'];
$cart_data = json_decode($cookie_data, true);
}else{
$cart_data = array();
}
$data = array(
"cart_id" => 1,
"product_id" => $this->input->post('product_id'),
"product_name" => $this->input->post('product_name'),
"product_price" => $this->input->post('product_price'),
"quantity" => $this->input->post('quantity'),
"options" => $this->input->post('options'),
"description" => $this->input->post('description'),
"image" => $this->input->post('image')
);
$cart_data[] = $data;
$item_data = json_encode($cart_data);
setcookie('shopping_cart',$item_data,time() + (86400 * 30));
$_COOKIE['shopping_cart'] = $item_data;
}
У меня возникла проблема, когда пользователь хочет удалить товар из корзины.Я использую платформу codeigniter, но не встроенные куки.
Ниже приведен код для удаления элемента:
<td><a href="<?php echo base_url('designs/delete/');?><?=$values['product_id'];?>" type="button" class="btn btn-default btn-sm">Delete</a></td>
Ниже приведен код в моем контроллере для удаленияitem:
function delete($delete_id){
$cookie_data = $_COOKIE['shopping_cart'];
$cart_data = json_decode($cookie_data, true);
foreach ($cart_data as $key => $value) {
if ($cart_data[$key]['product_id'] == $delete_id) {
unset($cart_data[$key]);
$item_data = json_encode($cart_data);
setcookie('shopping_cart',$item_data,time() + (86400 * 30));
header("location:/category/cart_summary.php?remove=1");
}
}
}
Однако, когда я нажимаю кнопку удаления, я получаю сообщение об ошибке.
Undefined variable $_COOKIE['shopping_cart']
Тем не менее, когда я проверяю свой браузер, он показывает, что cookie существует.В чем может быть проблема??Я уже проверил подобные вопросы в стеке, относящиеся к этой проблеме, но ни один не помог.Это включает в себя: неопределенный индекс для cookie в некоторых браузерах PHP неопределенный индекс при проверке значения cookie и наличия cookie