Вход Регистрация
Файл: __system/pages/authentication.php
Строк: 58
<?



      
if(!empty($_COOKIE['login']) && !empty($_COOKIE['password']))

        {            
Header('Location: /cabinet/');
        }



      
DEFINE('TITLE' 'Aвторизация');  # фиксируем титул


head(); 

                if(isset(
$_POST['confirmed']))
                {

                   
$error '';

                   if(!
preg_match("/^[A-Za-z1-9_]{2,20}$/iu",$_POST['login']) && !preg_match("/^[А-ЯЁа-яё1-9_]{2,20}$/iu",$_POST['login']))
                      
# проверяем на запрешенные символы
                         
{
                           
$error .= 'В <i>логине</i> используются запрешенные символы<br>';
                         }

                     if((
mb_strlen($_POST['login'], 'utf-8')<3) or (mb_strlen($_POST['login'], 'utf-8')>15))
                     
# проверяем на количество символов
                         
{
                           
$error .= '<i>Логин</i> должен быть не менее 3 символов и не более 15<br>';
                         }

                     if(!
preg_match("/^[A-Za-z1-9_]{2,20}$/iu",$_POST['password']) && !preg_match("/^[А-ЯЁа-яё1-9_]{2,20}$/iu",$_POST['password']))
                     
# проверяем на запрешенные символы
                         
{
                           
$error .= 'В <i>пароле</i> используются запрешенные символы<br>';
                         }

                     if((
mb_strlen($_POST['password'], 'utf-8')<6) or (mb_strlen($_POST['password'], 'utf-8')>30))
                     
# проверяем на количество символов
                         
{
                           
$error .= '<i>Пароль</i> должен быть не менее 6 символов и не более 30.<br>';
                         }

                  
$users $db->prepare("SELECT `salt` FROM `users` WHERE `name` = ? LIMIT 1");

                    
$users->bindValue(1$_POST['login'], PDO::PARAM_STR);
                    
$users->execute();

                    if(
$users -> rowCount() == 0)

                    {
                       
$error .= 'Такого <i>логина</i> нет в системе<br>';
                    }

                     else

                    {                      
$u $users -> fetch(PDO::FETCH_ASSOC);

                      
$password md5(md5($_POST['password']).$u['salt']);

                      
$userss $db->prepare("SELECT `id` FROM `users` WHERE `name` = ? and `password` = ? LIMIT 1");
                      
$userss->bindValue(1$_POST['login'], PDO::PARAM_STR);
                      
$userss->bindValue(2$passwordPDO::PARAM_STR);
                      
$userss->execute();

                       if(
$userss -> rowCount() == 0)

                        {
                           
$error .= 'Неверный <i>пароль</i><br>';
                        }


                    }


                  if(empty(
$error))

                   {                      
$users $db->prepare("SELECT `salt` FROM `users` WHERE `name` = ? LIMIT 1");


                      
$users->bindValue(1$_POST['login'], PDO::PARAM_STR);
                      
$users->execute();


                      
$u $users -> fetch(PDO::FETCH_ASSOC);

                      
$password md5(md5($_POST['password']).$u['salt']);

                      
SetCookie('login',$_POST['login'],time()+3600*84*84 '/' '.'.$_SERVER["HTTP_HOST"].'');
                      
SetCookie('password',$password,time()+3600*84*84'/' '.'.$_SERVER["HTTP_HOST"].'');
                      
Header('Location: /cabinet/');

                   }

                     else

                   {                       
DEFINE('TITLE' 'Вход в кабинет');  # фиксируем титул                    head();

                    
echo '<div class="main">';
                    echo 
''.$error.'<br />';

                    echo 
'<form action="/authentication/" method="post">';

                    echo 
'Логин:<br />';

                    echo 
'<input name="login" maxlength="10"/><br />';

                    echo 
'Пароль:<br />';

                    echo 
'<input name="password" type="password" maxlength="10"/><br />';

                    echo 
'<input name="confirmed" type="submit" value="Продолжить" /></form>';

                   }



                }

                  else

                {

                  echo 
'<div class="main">';
                  echo 
'<form action="/authentication/" method="post">';

                  echo 
'Логин:<br />';

                  echo 
'<input name="login" maxlength="10"/><br />';

                  echo 
'Пароль:<br />';

                  echo 
'<input name="password" type="password" maxlength="10"/><br />';

                  echo 
'<input name="confirmed" type="submit" value="Продолжить" /></form>';


                }

      echo 
'</div>';

      
foot();


?>
Онлайн: 3
Реклама