Просмотр файла Pages/registration.php

Размер файла: 3.56Kb
<?php
$title = 'Регистрация';
if($user_data)
	{
		header("Location: http://".$home."/");
	}
if($set['registration'] == 0)
    {
        echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'], 'home' => $home, 'style' => $style, 'error' => 'Регистрация закрыта.<br>', 'backLink' => 'http://'.$home.''));
		exit();
	}
if(isset($_POST['ok']))
    {
        $login = filterIn($mysqli,$_POST['login']);
        $mail = filterIn($mysqli,$_POST['mail']);
        $password = filterIn($mysqli,$_POST['password']);
        $kod = filterIn($mysqli,$_POST['kod']);
        $error = '';
        if(empty($login) OR empty($mail) OR empty($password) OR empty($kod))
            {
                $error .= 'Все поля обязательны к заполнению.<br>';
            }
        if($_SESSION['code'] != $kod)
            {
                $error .= 'Код с картинки введён не верно.<br>';
            }
        if ($mysqli->query("SELECT `id` FROM `users` WHERE `login` = '".$login."' LIMIT 1")->num_rows > 0)
            {
                $error .= 'Логин уже зарегистрирован. Выберите другой.<br>';
            }
        if (!preg_match('|^[A-Za-z0-9]+$|i',$login))
            {
                $error .= 'В логине можно использовать только латиницу и цифры.<br>';
            }
        if (!empty($mail) and !preg_match('#^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+(\.([A-Za-z0-9])+)+$#', $mail))
            {
                $error .= 'Вы ввели неверный адрес e-mail, необходим формат [email protected].<br>';
            }
        if (!empty($mail) and ($mysqli->query("SELECT `id` FROM `users` WHERE `mail` = '".$mail."' LIMIT 1")->num_rows > 0))
            {
                $error .= 'Пользователь с данным e-mail уже зарегистрирован.<br>';
            }
        if(mb_strlen($login) > 30 OR mb_strlen($login) < 5)
            {
                $error .= 'Поле "Логин" должно быть не меньше 5 и не больше 30 символов.<br>';
            }
        if(mb_strlen($password) > 10 OR mb_strlen($password) < 4)
            {
                $error .= 'Поле "Пароль" должно быть не меньше 4 и не больше 10 символов.<br>';
            }

        if(!empty($error))
            {
                unset($_SESSION['code']);
		echo $twig->render('system/error.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data,   'home' => $home, 'style' => $style, 'error' => $error, 'backLink' => 'http://'.$home.'/registration'));
            }
        else
            {
				unset($_SESSION['code']);
				$mysqli->query("INSERT INTO `users` SET `login` = '".$login."', `password` = '".md5($password)."', `mail` = '".$mail."', `rtime` = '".$time."', `style` = '".$style."', `pages` = '".$pages."'");
				echo $twig->render('system/succes.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data, 'home' => $home, 'style' => $style, 'text' => 'Регистрация прошла успешно.<br><a href="http://'.$home.'/authentication">Авторизация</a><br>'));
            }
    }
else
    {
        echo $twig->render('registration/index.tpl',array('title' => $title, 'sait_name' => $set['name_sait'],'user_data' => $user_data,'home' => $home, 'style' => $style));
    }
?>