сессия — PHP unset (), почему не работает во всех случаях

впервые у меня такая странная проблема. У меня есть файл с этим кодом:

<?php
session_start();
//if I dump session:
var_dump($_SESSION['product']);
//I get this:
array(2) { [1260]=> string(1) "1" [799]=> string(1) "1" }
//if I try to unset session [1260]
if(isset($_POST['delete']) && !empty($_POST['delete'])){
echo 'here';
unset($_SESSION['product'][1260]);
}
//unset() or session_destroy() at all not working
//if I unset($_SESSION['product'][1260]); without
if(isset($_POST['delete']) && !empty($_POST['delete'])){
}
//it is working
?>

Что может быть причиной unset или session_destroy, чтобы не работать в случае IF?

-1

Решение

Ну, ребята, проблема была в том, что внизу страницы у меня был код, который генерировал новые записи сессий … Очень жаль, что вы нашли время …! И спасибо, что поддержали меня. Дайте мне -1 за это 🙂 Я это заслужил 🙂

0

Другие решения

Проблема может быть $_POST['delete'] = ''; так что вам нужно только if(isset($_POST['delete']),

если вы хотите использовать этот пункт if(isset($_POST['delete']) && !empty($_POST['delete'])) в форме, которую вы отправили, вам нужно ввести значение для «удаления» ввода.

Например:

<input type="hidden" name="delete" value="1" />
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector