View file masteru.site/modules/login/create.php

File size: 5.62Kb
<?php
$title = 'Регистрация';
include_once ('../../system/function.php');
include_once ('../../system/header.php');
if(isset($user['id'])){
header('Location: /');
exit();
}

?>
<script>
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min)) + min;
}
function GeneratePassword()
{
var chars = "123456789ABCDEFGHJKMNPQRSTUVWXYZabcdefghjkmnopqrstuvwxyz";
var length = getRandomInt(6, 15);
var res = "";
var r;
var i;
for (i = 1; i <= length; i++)
{
r = Math.floor(Math.random() * chars.length);
res = res + chars.substring(r, r + 1);
}
document.getElementById('pp').value = res;
document.getElementById('pp1').value = res;
}
</script>
<?

if(isset($_REQUEST['submit'])) {
$login = strong($_POST['login']);
$pass  = strong($_POST['pass']);
$pass2 = strong($_POST['pass2']);
$email = strong($_POST['email']);
$name  = strong($_POST['name']);
$sex   = strong($_POST['sex']);
$chl = mysql_query("SELECT COUNT(`id`) FROM `users` WHERE `login` = '".$login."'"); 
$chm = mysql_query("SELECT COUNT(`id`) FROM `users` WHERE `email` = '".$email."'"); 

$_SESSION['log'] = $login;
$_SESSION['email'] = $email;
$_SESSION['name'] = $name;
$_SESSION['pass'] = $pass;


if(empty($login) or empty($pass) or empty($pass2) or empty($email) or empty($name)){
$_SESSION['err'] = 'Не заполненно одно из полей!';
header('Location: ?');
exit();    
}
//////////////////////////////////////////////////////////
if(mb_strlen($login) > 15 or mb_strlen($login) < 3){
$_SESSION['err'] = 'Длина логина от 3 до 15 символов';
header('Location: ?');
exit;
}
    
if (!preg_match('|^[А-Яа-яЁ-ёa-z0-9\-]+$|i', $login)){
$_SESSION['err'] = 'Запрещенные символы в логине!';
header('Location: ?');
exit;
}
//////////////////////////////////////////////////////////
if($pass != $pass2){
$_SESSION['err'] = 'Пароли не совпадают!';
header('Location: ?');
exit();    
}

if (!preg_match('|^[a-z0-9\-]+$|i', $pass)){
$_SESSION['err'] = 'Запрещенные символы в пароле!';
header('Location: ?');
exit;
}
        
if(mb_strlen($pass) > 25 or mb_strlen($pass) < 5){
$_SESSION['err'] = 'Введите пароль от 5 до 25 символов!';
header('Location: ?');
exit;
}
//////////////////////////////////////////////////////////
if(mb_strlen($email) > 40 or mb_strlen($email) < 6){
$_SESSION['err'] = 'Длина email от 6 до 40 символов';
header('Location: ?');
exit;
}

if (!preg_match('/[0-9a-z_\-]+@[0-9a-z_\-^\.]+\.[a-z]{2,6}/i', $email)) {
$_SESSION['err'] = 'Формат Email не верен!';
header('Location: ?');
exit();
}
//////////////////////////////////////////////////////////
if (mysql_result($chm, 0) > 0) {
$_SESSION['err'] = 'Email занят!';
header('Location: ?');
exit();
}

if (mysql_result($chl, 0) > 0) {
$_SESSION['err'] = 'Логин занят!';
header('Location: ?');
exit();
}


if(mb_strlen($name) > 30 or mb_strlen($name) < 3){
$_SESSION['err'] = 'Длина имени от 2 до 15 символов';
header('Location: ?');
exit;
}


mysql_query("INSERT INTO `users` SET `login` = '".$login."',   `pass` = '".md5(md5(md5($pass)))."', `name` = '".$name."', `sex` = '".$sex."', `email` = '".$email."', `style` = 'def_masteru',  `datareg` = '".time()."',`level` = '0',`rating` = '0.00', `max` = '10'");
$uid = mysql_insert_id();
mysql_query("INSERT INTO `reg` SET `us`='".$uid."'");
setcookie('id', $uid, time()+86400*365, '/');
setcookie('uspass', md5(md5(md5($pass))), time()+86400*365, '/');

$title = $_SERVER['HTTP_HOST'];
$msg = '

Вы успешно зарегистрировались на '.$HOME.'

-----------------------
Ваш логин: '.$login.'
-----------------------

-----------------------
Ваш пароль: '.$pass.'
-----------------------

Всего доброго';

$sets = 'admin@'.$_SERVER['HTTP_HOST'];
$adds = "From: <" . $sets . ">\r\n";
$adds .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";

mail($email, '=?utf-8?B?'.base64_encode('Добро пожаловать на MASTERU.SITE '.$HOME).'?=', $msg, $adds);
session_destroy();
header('location: '.$HOME);
}

echo '<div class="title">Регистрация</div>';
if(isset($_SESSION['err'])){
echo '<div class="podmenu"><font color="red"><b><i>'.$_SESSION['err'].'</i></b></font></div>';
}
session_destroy();
echo '<div class="podmenu"><form method="POST" action="">';
echo'Логин: <br /><input type="text" value="'.$_SESSION['log'].'" name="login" placeholder="Логин" maxlength="20" /><br />
Пароль:(мин 6 символов)<span onclick="GeneratePassword()"> <b>[сгенерировать] </b></span><br />
<input type="text" placeholder="Пароль" value="'.$_SESSION['pass'].'" name="pass" id="pp" maxlength="25" /><br />
Пароль ещё раз: <br />
<input type="text" name="pass2" placeholder="Повторите пароль" id="pp1" maxlength="25" /><br />
Е-mail: <br />
<input type="text" placeholder="Email" value="'.$_SESSION['email'].'" name="email" maxlength="40" /><br />
Имя: <br /><input type="text" name="name" placeholder="Имя" value="'.$_SESSION['name'].'" maxlength="30" /><br />
Пол: <br /><select name="sex">
<option value="1">Мужской</option>
<option value="2">Женский</option></select><br/>
Нажимая "Регистрировать" вы принимаете  <a href="'.$HOME.'/rules.php"><big><b>правила ресурса</b></big>. <b>A так же достоверность данных(они будут высланы вам на почту)</b></a></br>
<input type="submit" name="submit" value="Регистрировать" />
</form></div>';
include_once ('../../system/footer.php');
?>