PHP - Создать ссылку выхода - PullRequest
1 голос
/ 21 января 2012

Каков наилучший способ сделать ссылку выхода из системы? Я хочу уничтожить все мои сеансы и выполнить перенаправление на страницу входа, но я не уверен, что это лучший способ сделать это. Прямо сейчас у меня есть ссылка, ведущая к admin / logout.php, но я чувствую, что было бы плохо показывать пользователю мою структуру папок. Вот мой код, это довольно просто:

session_start();
    session_destroy();
        echo "<script type=\"text/javascript\">window.location.href='../login.php';</script>";

Так что было бы лучше сделать что-нибудь в javascript или ajax?

Ответы [ 2 ]

3 голосов
/ 21 января 2012

Если вы беспокоитесь о раскрытии структуры каталогов, не используйте каталоги.Просто ВСЕ ваши страницы проверяют параметр запроса logout:

<?php
if (isset($_GET['logout'])) {
   session_start();
   session_destroy();
   header("Location: login.php");
   exit();
}

Таким образом, вы можете выйти из ЛЮБОЙ страницы, ваша папка 'admin' никогда не будет открыта, и выполнение перенаправления header ()у пользователя нет никаких шансов прервать любой из других методов перенаправления, которые вы можете использовать (метатег, javascript и т. д.).На странице просто НИЧЕГО не увидит пользователь, потому что вы ничего не выводили.

0 голосов
/ 21 января 2012

logout.php:

<?php
session_start();
session_destroy();
?>
<html>
<head>
<meta HTTP-EQUIV="REFRESH" content="0; url=login.php">
</head>
</html>

это должна быть отдельная страница .php.Просто ссылку на него, и они не увидят этого, вместо этого они увидят содержимое index.php, но без сохраненных данных сеанса:)

Это, вероятно, лучший и самый простой способ сделать это.Все в простом PHP, с перенаправлением HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...