$_SERVER['HTTP_HOST']}/$uniqueID
ну и при переходу по короткой ссылки происходит редирект.function setTimeCookie(string $life_time): int
{
$getTimeShift = date_create();
$getTimeShift = date_modify($getTimeShift, $life_time);
$getTimeShift = date_timestamp_get($getTimeShift);
return $getTimeShift;
}
setcookie('login', 'typa Login', setTimeCookie('+ 1 week'), '/');
<?php
// Проверка авторизации
function isAuth()
{
$isAuth = false;
// если в сессии все ок, то access allowed
if (isset($_SESSION['is_auth']) && $_SESSION['is_auth']) {
$isAuth = true;
// если нет, то остается проверить куки
} elseif (isset($_COOKIE['login']) && isset($_COOKIE['pass'])) {
if (
$_POST['login'] == password_hash('1', PASSWORD_DEFAULT) && $_POST['pass'] == password_hash('2', PASSWORD_DEFAULT)) {
//$_SESSION['is_auth'] = true; - такой прием делается для того, что вновь поставить авторизовать по сессии пользователя, если проверку коки он прошел
$_SESSION['is_auth'] = true;
$isAuth = true;
}
}
return $isAuth;
}
//Сбрасываем авторизацию абсолютно любого пользователя – Сессия
if (isset($_SESSION['is_auth'])) {
unset($_SESSION['is_auth']);
}
//Куки
if (isset($_COOKIE['login'])) {
setcookie('login', '', time() - 1, '/');
}
if (isset($_COOKIE['pass'])) {
setcookie('pass', '', time() - 1, '/');
}
if (isset($_SESSION['flash_message'])) {
$information = $_SESSION['flash_message'];
unset($_SESSION['flash_message']);
}
if (count($_POST) > 0) {
if ($_POST['login'] == '1' && $_POST['pass'] == '2') {
$_SESSION['is_auth'] = true;
if (isset($_POST['remember'])) {
$login = password_hash('1', PASSWORD_BCRYPT, algorithmic_cost());
$pass = password_hash('2', PASSWORD_BCRYPT, algorithmic_cost());
setcookie('login', $login, time() + 3600 * 24 * 7, '/');
setcookie('pass', $pass, time() + 3600 * 24 * 7, '/');
}
if (isset($_SESSION['returnUrl'])) {
header('Location: /' . $_SESSION['returnUrl']);
unset($_SESSION['returnUrl']);
exit();
} else {
header('Location: /');
exit();
}
} else
$information = 'Неправильный логин или пароль!';
}
$isAuth = isAuth();
if (!$isAuth) {
$_SESSION['flash_message'] = 'Несанкционированный доступ! Авторизуйтесь.';
redirect_403();
} else {
$_SESSION['returnUrl'] = 'edit/article/' . $id_article;
$_SESSION['flash_message'] = 'Сессия была завершена. Повторите авторизацию.';
}
<?php
include_once('models/articles.php');
include_once('models/system.php');
include_once('models/auth.php');
include_once('functions/functions.php');
session_start();
$err404 = false;
// Подключение требуемого контроллера
$controller = trim($get_cnc[0] ?? 'main');
if ($controller === '' || !file_exists("controllers/{$controller}.php") || check_controller("controllers/{$controller}.php")) {
$err404 = true;
} else {
include("controllers/{$controller}.php");
}
if ($err404) {
redirect_404();
}
// Формирование страницы
echo views_connect('index.php', [
'preloader' => $preloader ?? null,
'title' => $title ?? null,
'navBar' => $navBar ?? null,
'form' => $form ?? null,
'switch_view' => $switch_view ?? null,
'all_articles' => $articles ?? null,
'single_article' => $single_article ?? null,
'infoblock' => $infoblock ?? null,
'get_cnc' => $get_cnc
]);