Файл: signup.php
Строк: 38
<?php
require_once('core/start.php');
$title = 'Регистрация';
require_once(root.'core/header.php');
echo '<div class="ot4">Регистрация</div>';
if(isset($user['id'])){
header('location:/');
die();
}
if($set['reg']==2){
err('Регистрация временно приостановлена. Приносим извинения за неудобства.');
require_once(root.'core/footer.php');
die();
}
if(!isset($_POST['save'])){
$_SESSION['cap'] = mt_rand(1111, 9999);
echo '<div class="block"><form method="post" action="?">*Ваш логин:<br/><input name="user" type="text" maxlength="15" /><br/>*Ваш пароль:<br/><input name="pass" type="password" maxlength="12" /><br/>*Повторите пароль:<br/><input name="pass2" type="password" maxlength="12" /><br/>Ваш пол:<br/>
<input type="radio" name="sex" value="1" checked="checked" /> Муж
<input type="radio" name="sex" value="2" /> Жен<br/>E-mail [для восстановления пароля]:<br /><input type="text" name="mail"/><br />*Каптча:<b>'.$_SESSION['cap'].'<br /><input type="text" name="kod" size="6"/><br /><input value="Зарегистрироваться" name="save" type="submit"/></form></div>';
} else {
$kod = num($_POST['kod']);
$user = secur($_POST['user']);
if(!preg_match("/@/i",$_POST['mail'])){
$err = 'Неверный формат E-mail';
}
if (core::$dbs->querySingle("SELECT COUNT(id) FROM `users` WHERE `user` = ?",array($_POST['user']))>=1){
$err = 'Логин <b>'.htmlspecialchars($_POST['user']).'</b> уже зарегистрирован!';}
if(strlen($_POST['user'])>15 || strlen($_POST['user'])<2 || empty($_POST['user'])){$err = 'Слишком длинный или короткий логин!';}
if(strlen($_POST['pass'])>15 OR strlen($_POST['pass'])<4){
$err = 'Слишком длинный или короткий пароль!';}
if(empty($kod) OR $_SESSION['cap'] != $kod){
$err ='Проверьте правильность ввода каптчи.';
}
if($_POST['pass']!==$_POST['pass2']){
$err = 'Пароли не совпадают!';}
if(!preg_match('!^[a-z0-9]+$!i',$_POST['pass'])){$err = 'В пароле обнаружены запрешенные знаки!';}
if (!preg_match('!^[a-zа-я0-9]+$!i',$_POST['user'])){$err = 'В логине присутствуют запрещенные символы';}
$pass = secur($_POST['pass']);
if(empty($err)){
core::$dbs->query("INSERT INTO `users` SET `user` = ?, `pass` = ?, `sex` = ?, `time_reg` = ?, `ip` = ?, `soft` = ?, `mail` = ?",array($user,md5($pass),intval($_POST['sex']),time(),$ip,$soft,secur($_POST['mail'])));
$last = core::$dbs->lastInsertId();
if ($last == 1) {
core::$dbs-> query("UPDATE users SET level = ? WHERE id = ? LIMIT 1",array(1,1));
}
SetCookie('cookie_id',$last,time()+3600*24*365, '/');
SetCookie('cookie_ps',md5($pass),time()+3600*24*365, '/');
$_SESSION['session_id'] = $last;
$_SESSION['session_ps'] = md5($pass);
echo '<div class="block">Регистрация прошла успешно!<br />Логин: ' . $user . '<br />Пароль: ' . $pass . '</div>';
require_once(root . 'core/footer.php');
die();
} else {
err($err);
}
}
require_once(root.'core/footer.php');
?>