Я хочу destroy
свою сессию на странице logout.php
<?php session_destroy(); unset($_SESSION["admin"]); $target = "admin.php"; echo $_SESSION["admin"]; ?>
с<?php session_destroy(); unset($_SESSION["admin"]); $target = "admin.php"; echo $_SESSION["admin"]; ?>
поэтому сеанс уничтожает страницу, но это не разрушает сеанс для всего приложения.
как это мне помочь?
Вы забываете начать сеанс, прежде чем уничтожить его
Попробуйте это
<?php session_start(); session_destroy(); ?>
Вам нужно написать session_start()
сверху. Как только ваша сессия будет уничтожена, у вас нет ничего в массиве сеанса, поэтому не нужно отменять unset($_SESSION["admin"]);
<?php session_start(); session_destroy(); ?>
Просто простой выход будет состоять из:
session_start(); session_destroy(); header("Location: page.php"); // echo "<pre>"; var_dump($_SESSION); echo </pre>"; exit;
Чтобы просмотреть ваш массив сеансов после уничтожения, закомментируйте header
и раскомментируйте var_dump
. он отобразит весь ваш массив. По общему мнению, он должен быть пустым.