-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.php
59 lines (53 loc) · 2.34 KB
/
index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
session_name('session_id'); //задаем ключь идентификатора сессии как session_id
session_start(); //открываем сессию
error_reporting(E_ALL);
//Файл с переменными для конфигурации контента на странице
include $_SERVER['DOCUMENT_ROOT'] . '/config/index.php';
//Файл с функциями для запросов к БД
include $_SERVER['DOCUMENT_ROOT'] . '/helpers/requestDBHelper.php';
//Авторизация
if (!empty($_POST)) {
$login = $_POST['login'];
$password = $_POST['password'];
$requestAuth = requestDBHelper\getUserByLogin($login);
if (isset($requestAuth[0]['password'])) {
if (password_verify($_POST['password'], $requestAuth[0]['password'])) {
$_SESSION['isLoggedIn'] = true;
$requestGroups = requestDBHelper\getUserGroup($requestAuth[0]['id']);
//Запись ролей пользоваетля в сессию (если они есть)
foreach ($groups as $name => $type) {
foreach ($requestGroups as $requestGroup) {
if (in_array($name, $requestGroup)) {
$_SESSION["$type"] = true;
}
}
}
setcookie('login', $login, time() + 43200, '/');
}
}
}
//Продление куки с логином пользвателя
if (isset($_COOKIE['login'])) {
setcookie('login', $_COOKIE['login'], time() + 43200, '/');
}
// Выход
if (!empty($_GET['login']) && $_GET['login'] === 'out') {
$isLoggedIn = null;
session_unset();
if (!empty($_SESSION['isLoggedIn'])) {
unset($_SESSION['isLoggedIn']);
unset($_SESSION['admin']);
unset($_SESSION['operator']);
}
session_destroy();
setcookie(session_name(), session_id(), time() - 3600, '/');
}
//Файл с функциями отображения контента
include $_SERVER['DOCUMENT_ROOT'] . '/helpers/pageHelper.php';
//Подключение хедера
include $_SERVER['DOCUMENT_ROOT'] . '/templates/header.php';
//Функция отображения контента определеннной страницы
pageHelper\showContent($contentArray);
//Подключение футера
include $_SERVER['DOCUMENT_ROOT'] . '/templates/footer.php';