PHP Unset Session Variable

Я программист noob, поэтому заранее извиняюсь за любые очевидные ошибки. На прошлой неделе я потратил на создание базы данных продуктов. У меня тоже есть момент, когда я могу добавлять продукты с помощью формы, просматривать все добавленные продукты и т. Д. Я использую сеансы, созданные через входные данные формы. Я изо всех сил пытаюсь включить работу с удаленной страницей продукта, я попытался использовать unset, чтобы очистить переменную, но не могу заставить ее работать.

ADD Страница продукта, которая устанавливает переменную сеанса:

$_SESSION['Products'][] = $_POST; //is how i set the session on the add products page. unset $_SESSION['Products'][]; //is how i have tried to clear the session although it does not work. 

Любая точка в правильном направлении будет оценена!

Related of "PHP Unset Session Variable"

Вы можете отключить переменную сеанса, используя:

  1. session_unset – освобождает все переменные сеанса (он равен использованию: $_SESSION = array(); )
  2. unset($_SESSION['Products']); не unset($_SESSION['Products']); – Отменить только индекс продуктов в переменной сеанса. ( Помните : вы должны использовать как функцию, а не так, как вы использовали)
  3. session_destroy – уничтожает все данные, зарегистрированные на сеанс

Чтобы узнать разницу между использованием session_unset и session_destroy , прочитайте этот ответ SO . Что помогает.

Функция Unset – это функция. Поэтому вы должны указать, какая переменная должна быть уничтожена.

 unset($var); 

В твоем случае

 unset ($_SESSION["products"]); 

Если вам нужно сбросить всю переменную сеанса, просто вызовите

 session_destroy (); 

Если вы полностью хотите очистить сеанс, вы можете использовать это:

 session_unset(); session_destroy(); 

На самом деле оба они не обязательно, но это не больно.

Если вы хотите удалить только определенную часть, я думаю, вам нужно это:

 unset($_SESSION['Products']); //or $_SESSION['Products'] = ""; не unset($_SESSION['Products']); //or $_SESSION['Products'] = ""; 

в зависимости от того, что вам нужно.

unset – это функция, а не оператор. Используйте его как unset($_SESSION['key']); для отмены этого сеансового ключа. Однако вы можете использовать session_destroy(); также. (Обязательно запустите сеанс с session_start(); а также)