есть проблема при проверке пароля при первой проверке пароля сценарий стопорится на password_verify и урл принимает вид http://site/login?login=admin&password=12345, хотя var_dump(password_verify($this->pass_form, $this->users['password']));
дает true, но если обновить страницу то авторизация срабатывает
private function load_user($user_login)
{
$this->users = $this->user_login->login_user($user_login);
$this->id = $this->users['id'];
$this->group = $this->users['user_group'];
}
private function load_form()
{
$this->login = htmlspecialchars($this->request->getVar('login'));
$this->pass_form = htmlspecialchars($this->request->getVar('password'));
$this->session->set(['name' => $this->login]);
}
private function verify_pass()
{
if ($this->pass_form == '') {
return redirect()->to('login');
} else {
if (password_needs_rehash($this->users['password'], PASSWORD_DEFAULT)) {
$this->user_login->update($this->id, ['password' => $this->pass_hash]);
}
if (password_verify($this->pass_form, $this->users['password'])) {
setcookie('id', $this->id, strtotime("+30 day"));
setcookie('group', $this->group, strtotime("+30 day"));
setcookie('name', $this->login, strtotime("+30 day"));
setcookie('access', 1, strtotime("+30 day"));
return redirect()->route('main');
} else {
return $this->logout();
}
}
}
function user_login()
{
$data = [
'title' => 'Вход в панель управления',
];
$this->dashboard('login', $data);
$this->load_form();
$this->pass_hash = password_hash($this->pass_form, PASSWORD_DEFAULT);
$this->load_user($this->login);
$this->verify_pass();
}
function login()
{
if ( ! isset($_COOKIE['access'])) {
$this->user_login();
} else {
return redirect()->to('main');
}
}
function index()
{
$data = [
'title' => 'Административная часть',
'countUser' => $this->user_login->countAll(),
];
if ( ! isset($_COOKIE['access'])) {
var_dump('error');
return $this->logout();
} else {
$this->dashboard('main', $data);
var_dump('access');
}
}
function logout()
{
setcookie('id', null, -1, '/');
setcookie('name', null, -1, '/');
setcookie('group', null, -1, '/');
setcookie('access', null, -1, '/');
return redirect()->to('/login');
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Кто знает как использовать ImageMagick в OpenServer? Скачал OpenServer вместе с ImageMagick, но при попытке им воспользоваться выдает ошибку Fatal error: Uncaught Error: Class 'Imagick'...
Как в VS Code сделать возможность по наведению курсором мыши на какую-либо функцию, объект , чтобы при этом как в sublime text выводилась подсказка...