Вход Регистрация
Файл: page/settings/authlog.php
Строк: 100
<?php
$title 
'История авторизаций';
require_once(
$_SERVER["DOCUMENT_ROOT"]."/inc/head.php");
if (isset(
$active)) {

    echo 
'<div class="title">История авторизаций ('.$count_auth.')</div>';

    
$stmt_count $connect->prepare("select count(*) from `authlog` where `uid` = ? and `id` = ? and `key` != ?");

    
// старые авторизации
    
$stmt_old $connect->prepare("select count(*) from `authlog` where `status` = ? and `uid` = ?");
    
$stmt_old->execute(array(0$user['id']));
    
$old_auth $stmt_old->fetchColumn();

    if (isset(
$_GET['exit'])) {
        if (isset(
$_POST['cancel'])) {
            
header('Location: /settings/authlog');
        }
        elseif (isset(
$_POST['ok'])) {
            
$reset $connect->prepare("update `authlog` set `status` = '0' where `uid` = ? and `key` != ?");
            if (
$reset->execute(array($user['id'], $authash))) {
                
header('Location: /settings/authlog');
            } else {
                echo 
'<div class="menu">Произошла ошибка!</div>';
            }
        }
        echo 
'<div class="menu">
        <form action="" method="POST">
        <input type="submit" name="ok" value="Подтвердить выход со всех устройств">
        <input type="submit" name="cancel" value="Отмена">
        </form></div>'
;
    }
    elseif (isset(
$_GET['reset'])) {
        
$stmt_count->execute(array($user['id'], $_GET['reset'], $authash));
        if (
$stmt_count->fetchColumn()) {
            if (isset(
$_POST['cancel'])) {
                
header('Location: /settings/authlog');
            }
            elseif (isset(
$_POST['ok'])) {
                
$reset_auth $connect->prepare("update `authlog` set `status` = '0' where `uid` = ? and `id` = ?");
                if (
$reset_auth->execute(array($user['id'], $_GET['reset']))) {
                    
header('Location: /settings/authlog');
                } else {
                    echo 
'<div class="menu">Произошла ошибка!</div>';
                }
            }
            echo 
'<div class="menu">
            <form action="" method="POST">
            <input type="submit" name="ok" value="Сбросить авторизацию ('
.intval($_GET['reset']).')">
            <input type="submit" name="cancel" value="Отмена">
            </form></div>'
;
        } else {
            
header('Location: /settings/authlog');
        }
    }
    elseif (isset(
$_GET['clear'])) {
        if (
$old_auth) {
            if (isset(
$_POST['cancel'])) {
                
header('Location: /settings/authlog');
            }
            elseif (isset(
$_POST['ok'])) {
                
$error '';
                if (empty(
$_POST['pass'])) {
                    
$error.= 'Введите пароль!<br/>';
                }
                elseif (!
password_verify($_POST['pass'], $user['pass'])) {
                    
$error.= 'Неверный пароль!<br/>';
                }
                if (
$error) {
                    echo 
'<div class="menu">'.$error.'</div>';
                } else {
                    
$del_old $connect->prepare("delete from `authlog` where `status` = ? and `uid` = ?");
                    if (
$del_old->execute(array(0$user['id']))) {
                        
header('Location: /settings/authlog');
                    } else {
                        echo 
'<div class="menu">Произошла ошибка!</div>';
                    }
                }
            }
            echo 
'<div class="menu">
            <form action="" method="POST">
            Введите пароль от аккаунта:<br/><input type="password" name="pass"><br/>
            <input type="submit" name="ok" value="Очистить старые авторизации">
            <input type="submit" name="cancel" value="Отмена">
            </form></div>'

        } else {
            
header('Location: /settings/authlog');
        }
    }

    echo 
'<div class="menu">
    <div class="butt9">
    <a href="?exit"><img src="/img/exit.png" alt="exit">Выйти со всех устройств</a>
    '
.($old_auth '<a href="?clear"><img src="/img/clear.png" alt="clear">Очистить старые авторизации</a>' '').'
    </div></div>'
;

    if (
$user['captcha'] && $user['attempts']) {

        echo 
'<div class="menu">
        <div class="danger">Возможно вас пытались взломать!
          <div class="red">
            Время: '
.daytime($user['captcha']).'<br/>
            Ошибочных попыток ввода пароля: '
.$user['attempts'].'
          </div>
        </div>
        </div>'
;

    }

    if (
$count_auth == 0) {
        echo 
'<div class="menu">Записей нет!</div>';
    } else {

        
$page = new Pagination($count_auth10);

        
$data $connect->prepare("select * from `authlog` where `uid` = :uid order by `id` desc limit :start, 10");
        
$data->bindValue(':uid'$user['id'], PDO::PARAM_INT);
        
$data->bindValue(':start'$page->startPDO::PARAM_INT);
        
$data->execute();
        
$sql $data->fetchAll();

        foreach (
$sql as $row) {
            echo 
'<div class="menu">
            Время: '
.date('d.m.Y H:i'$row['time']).'<br/>
            Последнее посещение: '
.date('d.m.Y H:i'$row['lasttime']).deviceIcon($row['ua']).'<br/>
            '
.($row['attempts'] ? 'Ошибочных попыток ввода пароля: '.$row['attempts'].'<br/>' '').'
            IP: '
.$row['ip'].'<br/>
            UA: '
.$row['ua'].
            (
$row['status'] == ? ($authash == $row['key'] ? '<div class="good">Нынешняя авторизация!</div>' '<div class="butt2"><a href="?reset='.$row['id'].'">Сбросить</a></div>') : '<div class="forbidden">Авторизация сброшена!</div>').'
            </div>'
;
        }

        
$page->navigation();

    }

    echo 
'<div class="forlink"><a href="/settings" class="links"><img src="/img/sett.png" alt="sett">Настройки</a></div>';

} else {
    
header('Location: /');
}

require(
$_SERVER["DOCUMENT_ROOT"]."/inc/foot.php");
?>
Онлайн: 3
Реклама