Запрет на просмотр страниц сайта PHP

239
26 июня 2017, 20:34

Я хочу сделать запрет на просмотр страниц сайта.

Например: Если пользователь зашёл на страницу signup.php, создал новый профиль и потом снова заходит на эту страницу, то заблокировать ему доступ на просмотр.

Не знаю, нужно ли это делать вообще, но в рамках безопасности думаю будет самое то!

И я делаю так: создаю переменную в массиве $_SESSION[], например $_SESSION['logged-in]и присваиваю ей значение Правда true. И потом делаю проверку. Если пользователь залогинился ($_SESSION['logged-in'] == true), то просто прекратить выполнение кода exit.

<?php session_start();
    if ($_SESSION['logged-in']) {
        echo '403';
        exit;
    }

В общем, вопрос: Как правильно сделать подобную защиту и есть ли такое вообще на популярных сайтах?

Answer 1

Такие проверки действительно существуют и они нужны.

Вместо того чтобы создавать отдельно запись в сессии лучше проверять на наличие куки в которой вы храните идентификатор пользователя (я же думаю вы используете куки, если нет, тогда проверяете на сессию в которой храните идентификатор).

К примеру можете сделать такую функцию и её подставлять на страницы где вам это нужно:

function is_auth() {
    return isset($_COOKIE['email']); //или что вы там пишите при авторизации пользователя
}

И потом в вашем коде вызываете эту функцию и запрещаете выполнение скрипта или разрешаете.

Если же действительно используете только сессии делайте проверку на наличие сессии.

READ ALSO
Дублируется пост в WP_query ajax запросе

Дублируется пост в WP_query ajax запросе

ЗдравствуйтеУ меня почему-то иногда дублируется последний пост при ajax запросе page например 2

172
MySQL скрывать выполненное задание

MySQL скрывать выполненное задание

Есть проект, где пользователи выкладывают задания, а другие его выполняютСуть вопроса: Нужно скрывать выполненные задания, НО не могу понять...

214
Почему нужно использовать dirname(__FILE__) в php

Почему нужно использовать dirname(__FILE__) в php

Во многих проектах видел подключение стороннего файла в таком виде:

226
Часть кода Qt/C++ вынести в DLL

Часть кода Qt/C++ вынести в DLL

Проект Qt/С++ для Windows/LinuxПочти всё, реализовано на классах

247