Вход Регистрация
Файл: modules/login/reg.php
Строк: 62
<?php
/*
* Автор - Александр Каплин(TheALex, Саня)
* Все права принадлежат CreaWap.Ru

* Время - 04.05.2015 г. 17:30
* Модуль регистрации на сайте
* Объявляем переменную заголовка страницы
*/

$title 'Регистрация';

//Инклюдим шапку сайта
include_once($_SERVER["DOCUMENT_ROOT"].'/style/head.php');
ob_start();
?>
<div class="title">Регистрация</div>
<?
//Если пользователь зарегистрировался и его еперкинуло на страницу ?ok
if(isset($_GET['ok'])){
    
?>
    <div class="success">
        Вы успешно зарегистрировались!<br/>
        <a href="/" class="link">Перейти на сайт</a>
    </div>
    <?
    
//Инклюдим ноги
    
include_once($_SERVER["DOCUMENT_ROOT"].'/style/foot.php');
    
//Прекращаем выполнение скрипта
    
exit();
}
mode('guest');
//Если нажата кнопка Зарегистрироваться
if(isset($_POST['ok'])){
    
//Фильтруем полученные данные
    
$_POST['nick']=guard($db->real_escape_string($_POST['nick']));
    
$_POST['name']=guard($db->real_escape_string($_POST['name']));
    
$_POST['email']=guard($db->real_escape_string($_POST['email']));
    
/*
    * Далее идет проверка на ошибки, если есть ошибка, то текст ошибки заносится в переменную error
    * Список ошибок(по порядку):
    * Если не введен ник
    * Если длинна введеного ника менее 2 символов
    * Если пароль не введен
    * Если подтверждение пароля не введено
    * Если не введено имя
    * Если имя содержит в себе менее двух символов
    * Если не введен E-Mail
    * Если E-Mail содержит в себе менее пяти символов
    * Если пароли не совпадают
    * Если неверно введен E-Mail
    * Если пользователь с введенным E-Mail уже существует
    * Если пользователь с введенным ником уже существует
    */
    
if(empty($_POST['nick'])){
        
$error 'Введите ник!';
    }elseif(
mb_strlen($_POST['nick']) < 2){
        
$error 'Ник должен содержать не менее двух символов!';
    }elseif(empty(
$_POST['password1'])){
        
$error 'Введите пароль!';
    }elseif(empty(
$_POST['password2'])){
        
$error 'Введите подтверждение пароля!';
    }elseif(empty(
$_POST['name'])){
        
$error 'Введите имя!';
    }elseif(
mb_strlen($_POST['name']) < 2){
        
$error 'Имя должно содержать в себе хотя бы 2 символа!';
    }elseif(empty(
$_POST['email'])){
        
$error 'Введите E-Mail!';
    }elseif(
mb_strlen($_POST['email']) < 5){
        
$error 'E-Mail должен содержать как минимум 5 символов!';
    }elseif(
$_POST['password1'] != $_POST['password2']){
        
$error 'Пароли не совпадают!';
    }elseif(!
preg_match('/[0-9a-z_-]+@[0-9a-z_-^.]+.[a-z]{2,6}/i'$_POST['email'])){
        
$error 'Неверно введен E-Mail';
    }elseif(
$db->query("SELECT * FROM `users` WHERE `email`='".$_POST['email']."'")->num_rows != 0){
        
$error 'Пользователь с таким E-Mail уже существует!';
    }elseif(
$db->query("SELECT * FROM `users` WHERE `nick`='".$_POST['nick']."'")->num_rows != 0){
        
$error 'Пользователь с таким ником уже существует!';
    }elseif(
mb_strlen($_POST['nick'])>40){
        
$error 'Длинна ника должна быть менее 40 символов!';
    }
    
//Если существует переменная с ошибкой, то выводим ошибку
    
if(isset($error)){
        
?>
        <div class="error"><?=$error?></div>
        <?
    
}else{//Или добавляем пользователя в бд и создаем куки и перенаправляем на главную
        
$tocken md5(time()."zona".rand(19));
        
$db->query("INSERT INTO `users` SET `nick`='".$_POST['nick']."', `password`='".md5($_POST['password1'])."', `name`='".$_POST['name']."', `email`='".$_POST['email']."', `date_reg`='".time()."', `sex`='".$_POST['sex']."', `tocken`='".$tocken."'");
        
/*setcookie("nick", $_POST['nick'], time()+86000*31*12);
        setcookie("password", md5($_POST['password1']), time()+86000*31*12);*/
        
setcookie("tocken"$tockentime()+86000*31*12);
        
header('location:?ok');
    }
}
?>
<div class="text">
    <form action="" method="POST">
        Придумайте ник:<br/>
        <input type="text" name="nick"><br/>
        Придумайте пароль:<br/>
        <input type="password" name="password1"><br/>
        Повторите пароль:<br/>
        <input type="password" name="password2"><br/>
        Введите имя:<br/>
        <input type="text" name="name"><br/>
        Ваш пол:<br/>
        <select name="sex">
            <option value="1">Мужской</option>
            <option value="2">Женский</option>
        </select><br/>
        Введите ваш E-Mail:<br/>
        <input type="text" name="email"><br/>
        <input type="submit" name="ok" value="Зарегистрироваться">
    </form>
</div>
<?
//Инклюдим ноги сайта
include_once($_SERVER["DOCUMENT_ROOT"].'/style/foot.php');
?>
Онлайн: 2
Реклама