Не удалось выйти из PHP, отключено ($ _ SESSION ['user']) не работает - PullRequest
0 голосов
/ 25 февраля 2019

Это было проблемой больше недели, и я начал верить, что это имеет что-то, кроме кода!

Это моя страница сеанса:

<?php
session_start();
include('dbConfigBDO.php');
include('SafeRedirect.php');

if(!isset($_SESSION['login_user'])){
    safe_redirect('login.php');
    die();
}
?>

Я установил$_SESSION['login_user'] после входа и звоните session.php на каждой странице.У меня также есть страница выхода:

<?php
session_start();
require 'SafeRedirect.php';
unset($_SESSION['login_user']);
session_destroy();
safe_redirect('login.php');
?>

Проблема здесь, даже после выхода из системы, я все еще могу получить доступ к своим страницам, которые я пытался предотвратить с помощью сеансов.

Что может быть неправильным?

Редактировать: моя SafeRedirect.php страница, я использовал ее с здесь

<?php
function safe_redirect($url, $exit=true) {
    if (!headers_sent()){

        header('HTTP/1.1 301 Moved Permanently');
        header('Location: ' . $url);

        header("Connection: close");
    }

    print '<html>';
    print '<head><title>Redirecting you...</title>';
    print '<meta http-equiv="Refresh" content="0;url='.$url.'" />';
    print '</head>';
    print '<body onload="location.replace(\''.$url.'\')">';

    print 'You should be redirected to this URL:<br />';
    print "<a href=$url>'$url'</a><br /><br />";

    print 'If you are not, please click on the link above.<br />';

    print '</body>';
    print '</html>';

    if ($exit) exit;
}
?>

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

Вопрос не нужен от php.Возможно, какая-то проблема из-за того, что браузер кеширует некоторые данные.Вы пробовали эти головы в своем HTML?

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
0 голосов
/ 25 февраля 2019

Убедитесь, что вам требуется session.php после

if(!isset($_SESSION['login_user'])){
          safe_redirect('login.php');
          die();
       }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...