Вход Регистрация
Файл: login.php
Строк: 27
<?php
    
    
# подключаем файл ядра
    
require_once('core/core.php');
    
    
# выводи шапку
    
getHeader();
    
    
# проверяем в условии что кнопка submit была нажата
    
if (isset($_POST['submit'])) {
        
        
# подготавливаем данные из формы (фильтровать я их не буду, так как не буду их экранировать)
        
$login $_POST['login'];
        
$password $_POST['password'];
        
        
# ошибки изначально пусты
        
$error null;
        
        
# подготавливаем запрос на проверку совпадения логина и пароля
        
        # используем метод PDO::prepare для безопасности и удобства
        
$sql $db->prepare("SELECT login, password FROM users WHERE login = :login");
        
# выполняем наш запрос
        
$sql->execute(array(':login' => $login));
        
# получаем ассоциативный массив
        
$check $sql->fetch(PDO::FETCH_ASSOC);
        
        
# чекаем данные из формы
        
        # проверяем введены ли данные из формы
        
if (empty($login) && empty($password)) $err .= 'Enter login and password!<br/>';
        
# проверяем совпадение логина и пароля
        
else if ($login !== $check['login'] && md5(md5($password)) !== $check['password']) $err .= 'Login and password do not match!<br/>';

        
# если есть ошибки выводим их
        
if ($err) { echo $err; } else {
        
# если нет ошибок производим авторизацию
        # в данный момент я использую cookie, ну вы можете использовать сессии (если будет следующий урок, то мы рассмотрим такой вариант)
        
setcookie('logged'base64_encode($login.':'.md5(md5($password))), time() + 3600 24 365'/');
        
header('Location: /');
        exit;
        }
    }
    
    
# подгружаем форму
    
$file ROOT.'/forms/login.html';
    if(
file_exists($file)) require_once $file;
    else echo 
'form login.html not found';
    
    
# выводим пол
    
getFooter();
Онлайн: 1
Реклама