Подскажите, (только начал работать с PHP) как и куда записать код с запоминанием вечных куки при входе пользователя, чтобы учётная запись была активна до тех пор, пока пользователь не нажмёт кнопку выйти или не очистит куки через браузер самостоятельно. Прикрепляю страницу входа
<?php
require 'db.php';
$data = $_POST;
if ( isset($data['do_login']) )
{
$user = R::findOne('users', 'login = ?', array($data['login']));
if ( $user )
{
//логин существует
if ( password_verify($data['password'], $user->password) )
{
//если пароль совпадает, то нужно авторизовать пользователя
$_SESSION['logged_user'] = $user;
echo '<script type="text/javascript">location="index.php";</script>';
}else
{
$errors[] = 'Логин или пароль не совпадают';
}
}else
{
$errors[] = 'Логин или пароль не совпадают';
}
if ( ! empty($errors) )
{
//выводим ошибки авторизации
echo '<div id="errors" style="color:red; text-align:center;">' .array_shift($errors). '</div>';
}
}
?>
Рекомендую Вам воспользоваться супер-глобальной переменной $_SESSION
и сессиями в целом. Подробнее Вы можете прочитать здесь. Но сессии тоже не вычны, они сбрасываются при очистке файлов cookie
, ведь сессия основана на этих файлах.
Есть вот такое решение.
Устанавливаете папку для сессии
Вставьте в начало нужного файла
ini_set('session.gc_maxlifetime', 3600*24*30);
ini_set('session.cookie_lifetime', 3600*24*30);
Каждый запуск данного файла эти значения будут переустанавливаться. Сессия будет вечной
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Использую laravel 56 для разработки интернет-магазина и как-то не приходилось пользоваться событиями и их слушателями
Дана бинарная строкаВ ней каждые 4 символа одно значение типа float в формате big-endian
Создаю сущность ORM, делаю все как описано тут и спотыкаюсь на первых шагахСоздаю класс по пути /home/bitrix/www/bitrix/modules/reaction/libs/reaction