Файл: mylaf.ru/reg.php
Строк: 426
<?
require 'sys/inc/start.php';
require 'sys/inc/compress.php';
require 'sys/inc/sess.php';
require 'sys/inc/home.php';
require 'sys/inc/settings.php';
require 'sys/inc/db_connect.php';
require 'sys/inc/ipua.php';
require 'sys/inc/fnc.php';
require 'sys/inc/shif.php';
$show_all=true; // показ для всех
require 'sys/inc/user.php';
only_unreg();
$set['title']='Регистрация';
require 'sys/inc/thead.php';
title();
if (isset($_GET['id'])){
$refs = '&id='.intval($_GET['id']);
} else {
$refs ='';
}
if ((!isset($_SESSION['refer']) || $_SESSION['refer']==NULL)
&& isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER']!=NULL &&
!preg_match('#mail.php#',$_SERVER['HTTP_REFERER']))
$_SESSION['refer']=str_replace('&','&',preg_replace('#^http://[^/]*/#','/', $_SERVER['HTTP_REFERER']));
if ($set['reg_select']=='close')
{
$err='Регистрация временно приостановлена';
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(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '".intval($_GET['id'])."' AND `activation` = '".my_esc($_GET['activation'])."'"),0)==1)
{
mysql_query("UPDATE `user` SET `activation` = null WHERE `id` = '".intval($_GET['id'])."' LIMIT 1");
$user=mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `id` = '".intval($_GET['id'])."' LIMIT 1"));
mysql_query("INSERT INTO `reg_mail` (`id_user`,`mail`) VALUES ('$user[id]','$user[ank_mail]')");
msg('Ваш аккаунт успешно активирован');
$_SESSION['id_user']=$user['id'];
include_once 'sys/inc/tfoot.php';
}
}
if (isset($_SESSION['step']) && $_SESSION['step']==1 && mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `nick` = '".$_SESSION['reg_nick']."'"),0)==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[]='Необходимо ввести Email';
elseif (!preg_match('#^[A-z0-9-._]+@[A-z0-9]{2,}.[A-z]{2,4}$#ui',$_POST['ank_mail']))$err[]='Неверный формат Email';
elseif(mysql_result(mysql_query("SELECT COUNT(*) FROM `reg_mail` WHERE `mail` = '".my_esc($_POST['ank_mail'])."'"),0)!=0)
{
$err[]="Пользователь с этим E-mail уже зарегистрирован";
}
}
if ($_POST['strana']==0)$err[]="Обязательно выберети страну своего проживания";
if ($_POST['promo']==0)$err[]="Обязательно укажите откуда вы узнали о нашем сайте";
if (strlen2($_POST['pass1'])<6)$err[]='По соображениям безопасности пароль не может быть короче 6-ти символов';
if (strlen2($_POST['pass1'])>32)$err[]='Длина пароля превышает 32 символа';
if ($_POST['pass1']!=$_POST['pass2'])$err[]='Пароли не совпадают';
if (!isset($_SESSION['captcha']) || !isset($_POST['chislo']) || $_SESSION['captcha']!=$_POST['chislo']){$err[]='Неверное проверочное число';}
if (!isset($err))
{
if ($set['reg_select']=='open_mail')
{
$activation=md5(passgen());
mysql_query("INSERT INTO `user` (`nick`, `pass`, `date_reg`, `date_last`, `pol`, `activation`, `ank_mail`) values('".$_SESSION['reg_nick']."', '".shif($_POST['pass1'])."', '$time', '$time', '".intval($_POST['pol'])."', '$activation', '".my_esc($_POST['ank_mail'])."')",$db);
$id_reg=mysql_insert_id();
$subject = "Активация аккаунта";
$regmail = "Здравствуйте $_SESSION[reg_nick]<br />
Для активации Вашего аккаунта перейдите по ссылке:<br />
<a href='http://$_SERVER[HTTP_HOST]/reg.php?id=$id_reg&activation=$activation'>http://$_SERVER[HTTP_HOST]/reg.php?id=".mysql_insert_id()."&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
mysql_query("INSERT INTO `user` (`nick`, `pass`, `date_reg`, `date_last`, `pol`, `strana`, `promo`) values('".$_SESSION['reg_nick']."', '".shif($_POST['pass1'])."', '$time', '$time', '".intval($_POST['pol'])."','".intval($_POST['strana'])."','".intval($_POST['promo'])."')",$db);
$user=mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `nick` = '".my_esc($_SESSION['reg_nick'])."' AND `pass` = '".shif($_POST['pass1'])."' LIMIT 1"));
if (isset($_SESSION['http_referer']))
mysql_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('Вам необходимо активировать Ваш аккаунт по ссылке, высланной на Email');
}
else
{
msg('Регистрация прошла успешно');
}
if (isset($_GET['id'])){
mysql_query("INSERT INTO `userref` (`user_id`, `id_ref`, `time`) VALUES ('".$user['id']."', '".intval($_GET['id'])."', '".time()."');");
mysql_query("UPDATE `user` SET `balls` = `balls` + '200' WHERE `id` = '".intval($_GET['id'])."' LIMIT 1");
}
mysql_query("UPDATE `user` SET `balls` = `balls` + '500' WHERE `id` = '".$user['id']."' LIMIT 1");
$msglenta="Привет [b] $user[nick] [/b] , это события твоих друзей, сюда будут приходить все события твоих друзей, новые файлы, новые фото, темы в форуме, вопросы в ответах и т.д ! Так же ты можешь сам создать событие нажав на ссылку [url=/notice/news.php?add_news]Создать событие[/url]";
$msgjurnal="Доброго времени суток [b] $user[nick] [/b] , это твой журнал, сюда будут приходить все ответы на ваши комментарии и прочие уведомления.";
$messeg="Доброго времени суток [b] $user[nick] [/b], спасибо вам за регистрацию на нашем дружном сайте [b] ".$_SESVER['HTTP_HOST']." [/b] . Если у вас возникли проблемы обратитесь к онлайн помощникам или попробуйте найти ответ на свой вопрос в [url=/info]Путеводители по сайту[/url] .";
mysql_query("INSERT INTO `mail` (`id_user`, `id_kont`, `msg`, `time`) values('0', '$user[id]', '$messeg', '$time')");
mysql_query("INSERT INTO `jurnal` (`id_user`, `id_kont`, `msg`, `time`) values('0', '$user[id]', '$msgjurnal', '$time')");
mysql_query("INSERT INTO `lenta` (`id_user`, `id_kont`, `msg`, `time`) values('2', '$user[id]', '$msglenta', '$time')");
header("location: /user/?id=$user[id]&pass=".htmlspecialchars($_POST['pass1'])."");
if ($set['reg_select']=='open_mail')unset($user);
echo "<div class='post'>n";
echo "»<a href='/user/settings/index.php'>Мои настройки</a><br />n";
echo "»<a href='umenu.php'>Мое меню</a><br />n";
echo "</div>n";
include_once 'sys/inc/tfoot.php';
}
}
elseif (isset($_POST['nick']) && $_POST['nick']!=NULL )
{
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `nick` = '".my_esc($_POST['nick'])."'"),0)==0)
{
$nick=my_esc($_POST['nick']);
if( !preg_match("#^([A-z0-9_ ])+$#ui", $_POST['nick']))$err[]='В нике присутствуют запрещенные символы';
if (preg_match("#(^ )|( $)#ui", $_POST['nick']))$err[]='Запрещено использовать пробел в начале и конце ника';
if (strlen2($nick)<3)$err[]='Короткий ник';
if (strlen2($nick)>32)$err[]='Длина ника превышает 32 символа';
}
else $err[]='Ник "'.stripcslashes(htmlspecialchars($_POST['nick'])).'" уже зарегистрирован';
if (!isset($err)){
$_SESSION['reg_nick']=$nick;
$_SESSION['step']=1;
msg ("Ник "$nick" может быть успешно зарегистрирован");
}
}
err();
if (isset($_SESSION['step']) && $_SESSION['step']==1){
echo "<form method='post' action='/reg.php?$passgen&$refs'>n";
echo "Ваш ник [A-z0-9 -_]:<br /><input type='text' name='nick' maxlength='32' value='$_SESSION[reg_nick]' /><br />n";
echo "<input type='submit' value='Другой' />n";
echo "</form>n";
echo "<form method='post' action='/reg.php?$passgen&$refs'>n";
echo "Ваш пол:<br /><select name='pol'><option value='1'>Мужской</option><option value='0'>Женский</option></select><br />n";
if ($set['reg_select']=='open_mail')
{
echo "E-mail:<br /><input type='text' name='ank_mail' /><br />n";
echo "* Указывайте ваш реальный адрес E-mail. На него придет код для активации аккаунта.<br />n";
}
echo "Страна<br/><select name='strana'>";
echo "<option value='0'".($user['strana']==0?" selected='selected'":null).">Выберете страну</option>n";
echo "<option value='1'".($user['strana']==1?" selected='selected'":null).">Абхазия</option>n";
echo "<option value='2'".($user['strana']==2?" selected='selected'":null).">Австралия</option>n";
echo "<option value='3'".($user['strana']==3?" selected='selected'":null).">Австрия</option>n";
echo "<option value='4'".($user['strana']==4?" selected='selected'":null).">Азербайджан</option>n";
echo "<option value='5'".($user['strana']==5?" selected='selected'":null).">Армения</option>n";
echo "<option value='6'".($user['strana']==6?" selected='selected'":null).">Афганистан</option>n";
echo "<option value='7'".($user['strana']==7?" selected='selected'":null).">Беларусь</option>n";
echo "<option value='8'".($user['strana']==8?" selected='selected'":null).">Бельгия</option>n";
echo "<option value='9'".($user['strana']==9?" selected='selected'":null).">Болгария</option>n";
echo "<option value='10'".($user['strana']==10?" selected='selected'":null).">Боливия</option>n";
echo "<option value='11'".($user['strana']==11?" selected='selected'":null).">Бразилия</option>n";
echo "<option value='12'".($user['strana']==12?" selected='selected'":null).">Великобритания</option>n";
echo "<option value='13'".($user['strana']==13?" selected='selected'":null).">Венгрия</option>n";
echo "<option value='14'".($user['strana']==14?" selected='selected'":null).">Германия</option>n";
echo "<option value='15'".($user['strana']==15?" selected='selected'":null).">Гонконг</option>n";
echo "<option value='16'".($user['strana']==16?" selected='selected'":null).">Грузия</option>n";
echo "<option value='17'".($user['strana']==17?" selected='selected'":null).">Израиль</option>n";
echo "<option value='18'".($user['strana']==18?" selected='selected'":null).">Индия</option>n";
echo "<option value='19'".($user['strana']==19?" selected='selected'":null).">Ирак</option>n";
echo "<option value='20'".($user['strana']==20?" selected='selected'":null).">Иран</option>n";
echo "<option value='21'".($user['strana']==21?" selected='selected'":null).">Казахстан</option>n";
echo "<option value='22'".($user['strana']==22?" selected='selected'":null).">Киргизия</option>n";
echo "<option value='23'".($user['strana']==23?" selected='selected'":null).">Республика корея</option>n";
echo "<option value='24'".($user['strana']==24?" selected='selected'":null).">Латвия</option>n";
echo "<option value='25'".($user['strana']==25?" selected='selected'":null).">Литва</option>n";
echo "<option value='26'".($user['strana']==26?" selected='selected'":null).">Молдавия</option>n";
echo "<option value='27'".($user['strana']==27?" selected='selected'":null).">Объединенные Арабские Эмираты</option>n";
echo "<option value='28'".($user['strana']==28?" selected='selected'":null).">Польша</option>n";
echo "<option value='29'".($user['strana']==29?" selected='selected'":null).">Россия</option>n";
echo "<option value='30'".($user['strana']==30?" selected='selected'":null).">Румыния</option>n";
echo "<option value='31'".($user['strana']==31?" selected='selected'":null).">Сербия</option>n";
echo "<option value='32'".($user['strana']==32?" selected='selected'":null).">Словакия</option>n";
echo "<option value='33'".($user['strana']==33?" selected='selected'":null).">Словения</option>n";
echo "<option value='34'".($user['strana']==34?" selected='selected'":null).">США</option>n";
echo "<option value='35'".($user['strana']==35?" selected='selected'":null).">Таджикистан</option>n";
echo "<option value='36'".($user['strana']==36?" selected='selected'":null).">Узбекистан</option>n";
echo "<option value='37'".($user['strana']==37?" selected='selected'":null).">Украина</option>n";
echo "<option value='38'".($user['strana']==38?" selected='selected'":null).">Чехия</option>n";
echo "<option value='39'".($user['strana']==39?" selected='selected'":null).">Швеция</option>n";
echo "</select><br/>";
echo "Введите пароль (6-32 символов):<br /><input type='password' name='pass1' maxlength='32' /><br />n";
echo "Повторите пароль:<br /><input type='password' name='pass2' maxlength='32' /><br />n";
echo "Откуда вы узнали про этот сайт?<br/><select name='promo'>";
echo "<option value='0'>Выберети из списка</option>n";
echo "<option value='1'>Пригласили друзья</option>n";
echo "<option value='2'>Из поисковых систем</option>n";
echo "<option value='3'>Из каталога сайтов</option>n";
echo "<option value='4'>Из рекламы на других ресурсах</option>n";
echo "<option value='5'>Увидели ссылки в соц сетях</option>n";
echo "<option value='6'>Другой источник информации</option>n";
echo "</select><br/>";
echo "<img src='/captcha.php?$passgen&SESS=$sess' width='100' height='30' alt='Проверочное число' /><br />n<input name='chislo' size='5' maxlength='5' value='' type='text' /><br/>n";
echo "Регистрируясь, Вы автоматически соглашаетесь с <a href='/rules.php'>правилами</a> сайта<br />n";
echo "<input type='submit' value='Продолжить' style='width:95%'/>n";
echo "</form>n";
}else{
echo "<div class='forum'>";
echo "<b><font color='blue'><img src='/style/star.png' alt=''> Внимание!!!</font> Изначально наш сайт был основан на том чтобы стать оригинальным сайтом которому не будет аналога во всем интернете.<br/><img src='/style/star.png' alt=''>
После регистрации вам станут доступны все модули и разделы сайта которых вы не найдете больше нигде, а если и найдете то мы уверены что у нас эти модули более функциональны и удобны. <br/><img src='/style/star.png' alt=''>
Мы быстро развиваемся и с каждым днем делаем сайт лучше и удобнее, мы не стоим на месте и идем впереди всех.</b>";
echo "</div>";
echo "<form method='post' action='/reg.php?$passgen&$refs'>n";
echo "Выберите ник [A-z0-9 -_]:<br /><input type='text' name='nick' maxlength='32' style='width:95%'/><br />n";
echo "Регистрируясь, Вы автоматически соглашаетесь с <a href='/pravila'>правилами</a> сайта<br />n";
echo "<input type='submit' value='Продолжить' />n";
echo "</form>n";
}
echo "<table><td style='vertical-align:top;border:1px solid silver;background:whitesmoke;width:20%'><a style='padding:4px;display:block;text-align:center;'href='pass.php'>Забыли пароль?</a></td>";
echo "<td style='vertical-align:top;border:1px solid silver;background:whitesmoke;width:20%'><a style='padding:4px;display:block;text-align:center;'href='aut.php'>Вход</a></td></table>";
require 'sys/inc/tfoot.php';
?>