Файл: reg.php
Строк: 169
<?
define('ROOT','./');
require_once ('system/power.php');
$diz -> head('Регистрация');
$diz -> title('Регистрация');
if ($aut==false){
if ($db->settings('rega')>1) {
if (!isset($_GET['true'])and ($db->settings('rules')!='Правила пока не установлены')) {
echo '<div class="fon">'.$func->tags(language($db->settings('rules'))).'</div>';
echo '<div class="dialog">
<a class="dialog_m" href="?true">'.language('Согласен').'</a><a class="dialog_m" href="'.ROOT.'">'.language('Не согласен').'</a>
</div>';
} else {
if (empty($_POST['login']) and empty($_POST['pass'])) {
$_SESSION['code'] = $func->capcha();
?>
<html>
<div class="fon">
<form action="?true" method="post">
<?echo language('Логин')?><br/>
<input type="text" id="login" name="login" maxlength="12" required/>
<br/>
<?echo language('Пол')?><br/><select name="sex"><option value="m"><?echo language('Мужской')?></option><option value="w"><?echo language('Женский')?></option></select><br/>
<?echo language('Пароль')?><br/>
<input type="password" id="pass" name="pass" maxlength="12" required/><br/>
Email<br/>
<input type="text" id="email" name="email" maxlength="32"/><br/>
</html>
<?
if($db->settings('capcha')=='0'){
echo 'Введите код:'.$diz -> img('code.php').'
<br/><input type="text" name="code" maxlength="4" title="'.language('Введите проверочный код').'"/></br>';
}
echo '<input type="submit" value="'.language('Регистрация').'"/></form></div>';
if($db->settings('rules')!='Правила сайта пока что не установлены.')echo '<div class="levo"><a href="reg.php" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(($_POST['code'] != $_SESSION['code']) and($db->settings('capcha')=='0'))
{
echo '<div class="fon">'.language('Не введен или введен не верно проверочный код').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
} else {
$login = shit($_POST['login']);
$sql = $db -> query("SELECT `id` FROM `users` WHERE `login` = '".$login."' LIMIT 1");
if(isset($_POST['email'])and mb_strlen($func->delprobel($_POST['email']))>3)$us_email = $db -> dbcount('COUNT(`id`)','users',"`email` = '".$_POST['email']."'");
if(isset($_POST['email'])and mb_strlen($func->delprobel($_POST['email']))>3 and $db->settings('warning_email')==1 and $us_email>0){
echo'<div class="fon">Пользователь с данным email уже есть на сайте.</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(!empty($_POST['email']) and !preg_match("#^[A-z0-9-._]+@[A-z0-9]{2,}.[A-z]{2,4}$#ui",$_POST['email'])){
echo'<div class="fon">'.language('Неверный формат email').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif($sql -> num_rows > 0){
echo'<div class="fon">'.language('Ник занят').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(preg_match("/[^A-z0-9_$]+/i",$_POST['pass'])){
echo'<div class="fon">'.language('В пароле есть запрещённые символы').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(mb_strlen($_POST['login']) > 12 || mb_strlen($_POST['pass']) > 12 || mb_strlen($_POST['login']) < 4 || mb_strlen($_POST['pass']) <4){
echo'<div class="fon">'.language('Ник/пароль не может быть короче 4х и длиннее 12ти символов').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(!preg_match("#^([A-zА-я0-9-_])+$#ui",$_POST['login']) or preg_match("#^([0-9])+$#ui",$_POST['login'])){
echo'<div class="fon">'.language('В нике есть запрещённые символы').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(preg_match("#[a-z]+#ui", $_POST['login']) && preg_match("#[а-я]+#ui",$_POST['login'])){
echo'<div class="fon">'.language('В нике есть запрещённые символы').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}elseif(preg_match("#(^ )|( $)#ui", $_POST['login'])){
echo'<div class="fon">'.language('В нике есть запрещённые символы').'</div>';
echo '<div class="levo"><a href="?true" class="levo_tuch"> '.$diz -> icon('back.png').' '.language('Назад').'</a></div>';
}else{
$login = shit($_POST['login']);
$email = htmlentities($_POST['email'],ENT_QUOTES,'UTF-8');
$pass = md5(md5($_POST['pass']));
$sex = (isset($_POST['sex']) && ($_POST['sex'] == 'm' or $_POST['sex'] == 'w')) ? trim($_POST['sex']) : 'm';
if($db->settings('rega')=='3')$act='no'; else $act='yes';
$db -> query("INSERT INTO `users` SET `login` = '".$login."', `pass` = '".$pass."',`sex` = '".$sex."',`act` = '".$act."',`email` = '".$email."',`style`='".$db->settings()."',`balls`='".$db->settings('bonus')."',`time` = '".time()."'");
$d=$db -> insert_id;
///уведомление об регистрации
if(mb_strlen($func->delprobel($email))>4){
$theme=language('Успешная регистрация');
$text= language('Произведена регистрация на сайте').' '.$_SERVER['HTTP_HOST'].'<br/>
'.language('Логин').': <b>'.$login.' (ID '.$d.')</b>
<br/>'.language('Пароль').': <b>'.shit($_POST['pass']).'</b>';
$header.="From: "".$adm_m."" <".$adm_m.">n";
$header.="Subject: ".$theme."n";
$header.="Content-type: text/html; charset="utf-8"n";
mail($email,$theme,$text,$header);
}
////////////////////////////////
echo '<div class="fon">
'.language('Успешная регистрация').'<br/>
'.language('Ваши данные').':<br/>
ID: <span class="text">'.$d.'</span><br/>
'.language('Логин').': <span class="text">'.$login.'</span><br/>
'.language('Пароль').': <span class="text">'.shit($_POST['pass']).'</span>
</div>';
unset($_SESSION['pass']);
unset($_SESSION['user_id']);
unset($_SESSION['code']);
}
}
}
}else echo '<div class="fon">'.language('Регистрация была закрыта администратором').'</div>';
echo '<div class="levo"><a href="index.php" class="levo_tuch"> '.$diz -> icon('home.png').' '.language('На главную').'</a></div>';
}else header('Location: '.ROOT);
#####Копирайт#######
$diz -> out($msg);
?>