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

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 
H.'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','"my_esc($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 
H.'sys/inc/tfoot.php';
            exit;
        }
}

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

echo 
"  <div class='p_m'> ";


if (
$set['reg_select'] == 'close')
{
$errlang('Регистрация временно приостановлена');
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` = '".my_esc($_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` = '".my_esc($_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(H.'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('".my_esc($_SESSION['reg_nick'])."', '".shif($_POST['pass1'])."', '$time', '$time', '".intval($_POST['pol'])."', '$activation', '".my_esc($_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('".my_esc($_SESSION['reg_nick'])."', '".shif($_POST['pass1'])."', '$time', '$time', '".intval($_POST['pol'])."','"time() ."')",$db);


 
$user=mysql_fetch_assoc(query("SELECT * FROM `user` WHERE `nick` = '".my_esc($_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', '".my_esc($_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(H.'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` = '".my_esc($_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(H.'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 "  <div class='p_m'> ";

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

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

echo 
"<input type='submit' class='submit_tab' value='".lang('Войти на сайт')."' /><br/>";
echo 
"</form>";
echo 
lang('Регистрируясь, Вы автоматически соглашаетесь с')." <a href='/user/rules'><b>".lang('правилами')."</b></a> ".lang('сайта')."<br />";

echo 
"</div>";

}
else
{
echo 
"<center><div class='p_m'><form method='post' action='?'>";
echo 
lang('Придумайте ник')." <br /><input type='text' name='nick' maxlength='32' /><br />";
echo 
"<input type='submit' class='submit_tab' value='".lang('Продолжить')."' /><br />";
//echo lang('Регистрируясь, Вы автоматически соглашаетесь с')." <a href='/user/rules'><b>".lang('правилами')."</b></a> ".lang('сайта')."<br />";


echo "</form></div></center>";
}
 

echo 
"
<div class ='foot'>"
.lang('Уже зарегистрированы?')."<br />&raquo;<a href='/aut.php'>".lang('Авторизация')."</a></div>
<div class ='foot'>"
.lang('Не можете вспомнить пароль?')."<br />&raquo;<a href='/pass.php'>".lang('Восстановить пароль')."</a></div>";
include_once 
'sys/inc/tfoot.php';
?>
Онлайн: 1
Реклама