Loading...
Обучение/Помощь новичкам | Бан пользователя
Как делать проверку на бан в 6 строке чтобы разлогинило и && $user['banned'] или || $user['banned'] ?
php
<?php
if(isset($_COOKIE['uID']) && isset($_COOKIE['uHASH']))
{
$user = mysqli_fetch_assoc(mysqli_query($mysqli, "SELECT * FROM `users` WHERE `uID` = '".intval($_COOKIE['uID'])."'"));

if(isset($user))
{
if(($user['uHASH'] != $_COOKIE['uHASH']))
{
unset($user);

setcookie('uID', '', time() - 60*60*24*365);
setcookie('uHASH', '', time() - 60*60*24*365);
}
}
}

________
посл. ред. 15.07.2023 в 00:32; всего 1 раз(а); by SNEG
|| - ИЛИ, да или нет, если будут оба то будет да
&& - И, если надо да то оба должны быть да ибо будет нет
Ну и код у вас. Хранишь хеш в куках. Это значит, если сольют базу, сразу взлом всех акков. Проверку на бан хз как сделать, не видя базу
________
посл. ред. 15.07.2023 в 04:55; всего 1 раз(а); by Something
Something (15 июля 2023, в 4:54)
Ну и код у вас. Хранишь хеш в куках. Это значит, если сольют базу, сразу взлом всех акков. Проверку на бан хз как сделать, не видя базу
Как правильно?
SNEG (15 июля 2023, в 10:36)
Как правильно?
Нужна отдельная таблица для сессий авторизации. При авторизации создаешь случайный хеш и пишешь юзеру в куки. Далее от этого хеша делаешь еще один хеш и добавляешь его (вместе с id юзера) в таблицу. При каждом посещении проверяешь хеш хеша из куков с тем что в базе, чтобы совпадал. Тогда даже если сольют всю твою базу (даже вместе с сессиями), аккаунты взломать не выйдет.
________
посл. ред. 15.07.2023 в 11:27; всего 1 раз(а); by Something
Онлайн: 2
Время:
Gen. 0.092
(c) Bym.Guru 2010-2025