Вход Регистрация
Файл: reg.php
Строк: 295
<?php

include_once 'sys/inc/start.php';
include_once 
'sys/inc/compress.php';
include_once 
'sys/inc/sess.php';
include_once 
'sys/inc/home.php';
include_once 
'sys/inc/settings.php';
include_once 
'sys/inc/db_connect.php';
include_once 
'sys/inc/ipua.php';
include_once 
'sys/inc/fnc.php';
include_once 
'sys/inc/shif.php';
$show_all true// показ для всех
include_once 'sys/inc/user.php';
only_unreg();
$set['title'] = lang('Регистрация');
include_once 
'sys/inc/thead.php';
include_once 
'sys/inc/captcha.php';

title();


// если вкл и есть сессия с ником 
if ($set['reg_nick_mat'] == AND isset($_SESSION['reg_nick'])) {

    require_once 
'sys/inc/censure.php';
    
$censure censure($_SESSION['reg_nick']);
    
//если есть мат
    
if ($censure) {
        
$msg_r lang('Попытка регнуть ник с матом') . ' ' output_text($_SESSION['reg_nick']) . '" ' lang('его ip') . ' ' $_SERVER['REMOTE_ADDR'] . ' [[url=/' APANEL '/ban_ip.php?min=' $_SERVER['REMOTE_ADDR'] . ']' . ('Забанить') . '[/url]]';
        
msg(lang('Регистрация не возможна.В нике содержится мат.Попробуйте позже'));

        if (@
$_COOKIE['timess'] <= time()) {
            
//mail_send(0,1,$msg_r);
            
query("INSERT INTO `jurnal_system` (`time` ,`type` ,`read` ,`id_user`,`msg`,`id_kont`) VALUES ( '" time() . "',  'system',  '0',  '0','" mysql_real_escape_string($msg_r) . "','0');");
            
setcookie('timess'time() + 600time() + 60 60 24 365);
        }

        if (
$_COOKIE['timess_i'] <= time()) {
            
$_SESSION['reg_nick'] = null;
            
setcookie('timess_i'time() + 600time() + 60 60 24 365);
            exit(
header('Location: ?'));
        }
        require_once 
'sys/inc/tfoot.php';
        exit;
    }
}

if (
$set['guest_select'] == 1) {
    
msg(lang("Доступ к сайту разрешен только авторизованым пользователям"));
}

echo 
"<div class='list-group-item'>";

if (
$set['reg_select'] == 'close') {
    
$err lang('Регистрация временно приостановлена');
    
err();
    echo 
"<a href='/aut.php'>" . ('Авторизация') . "</a><br />n";
    include_once 
'sys/inc/tfoot.php';
} elseif (
$set['reg_select'] == 'open_mail' && isset($_GET['id']) && isset($_GET['activation']) && $_GET['activation'] != NULL) {
    if (
mysql_result(query("SELECT COUNT(*) FROM `user` WHERE `id` = '" intval($_GET['id']) . "' AND `activation` = '" mysql_real_escape_string($_GET['activation']) . "'"), 0) == 1) {

        
query("UPDATE `user` SET `activation` = null WHERE `id` = '" intval($_GET['id']) . "' LIMIT 1");
        
$user mysql_fetch_assoc(query("SELECT * FROM `user` WHERE `id` = '" intval($_GET['id']) . "' LIMIT 1"));
        
query("INSERT INTO `reg_mail` (`id_user`,`mail`) VALUES ('$user[id]','$user[ank_mail]')");
        
msg(lang('Ваш аккаунт успешно активирован'));

        
$_SESSION['id_user'] = $user['id'];
        include_once 
'sys/inc/tfoot.php';
    }
}

if (isset(
$_SESSION['step']) && $_SESSION['step'] == && mysql_result(query("SELECT COUNT(*) FROM `user` WHERE `nick` = '" $_SESSION['reg_nick'] . "'"), 0) == && isset($_POST['pass1']) && $_POST['pass1'] != NULL && $_POST['pass2'] && $_POST['pass2'] != NULL) {

    if (
$set['reg_select'] == 'open_mail') {
        if (!isset(
$_POST['ank_mail']) || $_POST['ank_mail'] == NULL) {
            
$err[] = lang('Неоходимо ввести Email');
        } elseif (!
preg_match('#^[A-z0-9-._]+@[A-z0-9]{2,}.[A-z]{2,4}$#ui'$_POST['ank_mail'])) {
            
$err[] = lang('Неверный формат Email');
        } elseif (
mysql_result(query("SELECT COUNT(*) FROM `reg_mail` WHERE `mail` = '" mysql_real_escape_string($_POST['ank_mail']) . "'"), 0) != 0) {
            
$err[] = lang("Пользователь с этим E-mail уже зарегистрирован");
        }
    }



    if (
strlen2($_POST['pass1']) < 6) {
        
$err[] = lang('По соображениям безопасности пароль не может быть короче 6-ти символов');
    }
    if (
strlen2($_POST['pass1']) > 32) {
        
$err[] = lang('Длина пароля превышает 32 символа');
    }
    if (
$_POST['pass1'] != $_POST['pass2']) {
        
$err[] = lang('Пароли не совпадают');
    }

    
//Поисковое слово
    
$world_set_update $_POST['pass1'];
    
//файл где ищем
    
$file_default file_get_contents('sys/dat/if_password.txt');

    
//если  нету записываем 
    
if (stripos($file_default$world_set_update) !== false) {
        
$err[] = lang('Пароль слишком простой');
    }

    if (!isset(
$_SESSION['captcha']) || !isset($_POST['chislo']) || $_SESSION['captcha'] != $_POST['chislo']) {
        
$err[] = lang('Неверное проверочное число');
    }

    if (!isset(
$err)) {
        if (
$set['reg_select'] == 'open_mail') {
            
$activation md5(passgen());

            
query("INSERT INTO `user` (`nick`, `pass`, `date_reg`, `date_last`, `pol`, `activation`, `ank_mail`,`pass_time`) values('" mysql_real_escape_string($_SESSION['reg_nick']) . "', '" shif($_POST['pass1']) . "', '$time', '$time', '" intval($_POST['pol']) . "', '$activation', '" mysql_real_escape_string($_POST['ank_mail']) . "','" time() . "')"$db);

            
$id_reg mysql_insert_id();
            
$subject = ('Активация аккаунта');
            
$regmail = ('Здравствуйте') . "  $_SESSION[reg_nick]<br />
. ('Для активации Вашего аккаунта перейдите по ссылке') . ":<br />
<a href='http://
$_SERVER[HTTP_HOST]/reg.php?id=$id_reg&amp;activation=$activation'>http://$_SERVER[HTTP_HOST]/reg.php?id=" mysql_insert_id() . "&amp;activation=$activation</a><br />
. ('Если аккаунт не будет активирован в течении 24 часов, он будет удален') . " <br />
. ('С уважением, администрация сайта') . "<br />
"
;
            
$adds "From: "password@$_SERVER[HTTP_HOST]" <password@$_SERVER[HTTP_HOST]>n";
            
$adds .= "Content-Type: text/html; charset=utf-8n";
            
mail($_POST['ank_mail'], '=?utf-8?B?' base64_encode($subject) . '?='$regmail$adds);
        } else {
            
query("INSERT INTO `user` (`nick`, `pass`, `date_reg`, `date_last`, `pol`,`pass_time`) values('" mysql_real_escape_string($_SESSION['reg_nick']) . "', '" shif($_POST['pass1']) . "', '$time', '$time', '" intval($_POST['pol']) . "','" time() . "')"$db);
        }



        
$user mysql_fetch_assoc(query("SELECT * FROM `user` WHERE `nick` = '" mysql_real_escape_string($_SESSION['reg_nick']) . "' AND `pass` = '" shif($_POST['pass1']) . "' LIMIT 1"));


        if (isset(
$_SESSION['http_referer'])) {
            
query("INSERT INTO `user_ref` (`time`, `id_user`, `type_input`, `url`) VALUES ('$time', '$user[id]', 'reg', '" mysql_real_escape_string($_SESSION['http_referer']) . "')");
        }

        
$_SESSION['id_user'] = $user['id'];
        
setcookie('id_user'$user['id'], time() + 60 60 24 365);
        
setcookie('pass'cookie_encrypt($_POST['pass1'], $user['id']), time() + 60 60 24 365);


        if (
$set['reg_select'] == 'open_mail') {
            
msg(lang('Вам необходимо активировать Ваш аккаунт по ссылке, высланной на Email'));
        } else {
            
query("UPDATE `user` SET `mylink` = 'id" $user['id'] . "', `browser` = '" . ($webbrowser == 'web' 'web' 'wap') . "' WHERE `id` = " $user['id']);

            
$_SESSION['message'] = lang('Регистрация прошла успешно,добро пожаловать на сайт');

            
$reg_set 1;
            
$Search glob('sys/reg/*.php');
            foreach (
$Search as $load_plugins) {
                include_once 
$load_plugins;
            }

            
#включаем модуль возврата
            
if ($set['reg_ref'] == 1) {
                exit(
header("Location: " $_SESSION['ref_loc'] . "?&reg_ref"));
            }
        }

        if (
$set['reg_select'] == 'open_mail') {
            unset(
$user);
        }
        exit(
header('Location: /id' $user['id']));
    }
} elseif (isset(
$_POST['nick']) && $_POST['nick'] != NULL) {
    if (
mysql_result(query("SELECT COUNT(*) FROM `user` WHERE `nick` = '" mysql_real_escape_string($_POST['nick']) . "'"), 0) == 0) {
        
#тут тоже не надо фильтровать 
        
$nick $_POST['nick'];

        if (!
preg_match("#^([A-zА-я0-9-_ ])+$#ui"$_POST['nick'])) {
            
$err[] = lang('В логине присутствуют запрещенные символы');
        }
        if (
preg_match("#[a-z]+#ui"$_POST['nick']) && preg_match("#[а-я]+#ui"$_POST['nick'])) {
            
$err[] = lang('Разрешается использовать символы только русского или только английского алфавита');
        }
        if (
preg_match("#(^ )|( $)#ui"$_POST['nick'])) {
            
$err[] = lang('Запрещено использовать пробел в начале и конце логина');
        }
        if (
strlen2($nick) < 3) {
            
$err[] = lang('Короткий логин');
        }
        if (
strlen2($nick) > 32) {
            
$err[] = lang('Длина логина превышает 32 символа');
        }

        
#Поисковое слово
        
$world_set_update $nick;
        
#файл где ищем
        
$file_default file_get_contents('sys/dat/if_reg.txt');

        
#если  нету записываем 
        
if (stripos($file_default$world_set_update) !== false) {
            
$err lang('Такие логины запрещены');
        }
    } else {
        
$err[] = lang('Логин') . ' "' $_POST['nick'] . '" ' lang('уже зарегистрирован');
    }

    if (!isset(
$err)) {
        
$_SESSION['reg_nick'] = $nick;
        
$_SESSION['step'] = 1;
        
msg(lang('Логин') . '    "' $nick '" ' lang('может быть успешно зарегистрирован'));
    }
}

err();

if (!isset(
$user)) {
    echo 
'<center>' lang('Вы можете авторизоваться через') . '<br/>' api_Login::out($_SERVER['HTTP_HOST'] . '/pages/plugins/ulogin.php') . '</center>';
}
echo 
"  </div> ";


if (isset(
$_SESSION['step']) && $_SESSION['step'] == 1) {
    
/*
      echo "<div class='p_m'><form method='post' action='?'>";
      echo lang('Ваш ник')." <br /><input type='text' name='nick' maxlength='32' value='$_SESSION[reg_nick]' /><br />";
      echo "<input type='submit' class='submit_tab'  value='".lang('Другой')."' />";
      echo "</form></div>";class='submit_tab'
     */

    
echo "<form method='post' class='list-group-item' action=''>n";
    echo 
lang('Ваш пол') . ":<br />n";
    echo 
"<select class='form-control' name='pol'>n";
    echo 
"<option value='1'>" lang('Мужской') . "</option>n";
    echo 
"<option value='0'>" lang('Женский') . "</option>n";
    echo 
"</select>n";

    if (
$set['reg_select'] == 'open_mail') {
        echo 
"E-mail:<br /><input type='text' name='ank_mail' />n";
        echo 
"*" lang('Указывайте ваш реальный адрес E-mail. На него придет код для активации аккаунта.') . "<br />n";
    }
    echo 
lang('Ваш пароль') . "(6-32 символов):<br />";
    echo 
"<input type='password' class='form-control' name='pass1' maxlength='32' />n";
    echo 
lang('Повторите пароль') . ":<br />";
    echo 
"<input type='password' class='form-control' name='pass2' maxlength='32' />n";
    echo 
captcha_show() . "<br />n";
    echo 
"<input name='chislo' class='form-control' maxlength='5' value='' type='text' /><br />n";

    echo 
"<button type='submit' class='btn btn-success'>" lang('Войти на сайт') . "</button>n";
    echo 
"</form>n";
    echo 
"<div class='list-group-item'>n";
    echo 
lang('Регистрируясь, Вы автоматически соглашаетесь с') . " <a href='/user/rules'><b>" lang('правилами') . "</b></a> " lang('сайта') . "n";
    echo 
"</div>n";
} else {
    echo 
"<form method='post' class='list-group-item' action='?'>n";
    echo 
"<input data-toggle='tooltip' data-placement='bottom' class='form-control' placeholder='" lang('Введите логин') . "' title='" lang('Введите логин') . "' type='text' name='nick' maxlength='32' />n";
    echo 
"<small>" lang('Регистрируясь, Вы автоматически соглашаетесь с') . " <a href='/user/rules'><b>" lang('правилами') . "</b></a> " lang('сайта') . "</small><br />n";
    echo 
"<button class='btn btn-success'>" lang('Продолжить') . "</button>n";
    echo 
"</form>n";
}

echo 
"<div class='list-group-item'>n";
echo 
lang('Уже зарегистрированы?') . "<br />n";
echo 
"<a href='/aut.php'>" lang('Авторизация') . "</a>n";
echo 
"</div>n";
echo 
"<div class='list-group-item'>n";
echo 
lang('Не можете вспомнить пароль?') . "<br />n";
echo 
"<a href='/pass.php'>" lang('Восстановить пароль') . "</a>n";
echo 
"</div>n";

include_once 
'sys/inc/tfoot.php';
Онлайн: 2
Реклама