Файл: www/reg.php
Строк: 65
<?php
include"db_con.php";
echo'
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8>
<link rel="stylesheet" type="text/css" href="/style.css">
<title>Авторизация</title>
</head>
<body>';
if(empty($_POST['submit']))
{
$cod = mt_rand (0, 99999);
$_SESSION['code'] = $cod;
?>
<div class="form-container-aut">
<form id="reg_form" action="" method="POST">
<div class="form-title-aut">Логин</div>
<input class="form-field-aut" type="text" name="login" value="<?php if(isset($_SESSION['login'])) echo $_SESSION['login']; ?>">
<div class="form-title-aut">Пароль</div>
<input class="form-field-aut" type="password" name="pass">
<br />
<div class="form-title-aut">Подтвердить пароль</div>
<input class="form-field-aut" type="password" name="pass2">
<br />
<div class="form-title-aut">Введите код: <u><?php echo $cod; ?></u></div>
<input class="form-field-aut" type="text" name="code">
<br />
<div id="lower">
<input class="submit-button-aut" type="submit" name="submit" value="Зарегистрироваться">
</div>
</form>
</div>
<?
}
else
{
$err = array();
# проверяем, не сущестует ли пользователя с таким именем
$post_login = trim(mysql_real_escape_string(htmlspecialchars($_POST['login'])));
$query = mysql_query("SELECT COUNT(*) FROM `users` WHERE `login`='".$post_login."'");
if(mysql_result($query, 0) > 0)
{
$err[] = "Пользователь с таким логином уже существует в базе данных";
}
# проверям логин
if(preg_match("/^[0-9]+$/",$_POST['login']))
{
$err[] = "Логин не может состоять только из цифр";
}
if(strlen($_POST['login']) < 3 or strlen($_POST['login']) > 30)
{
$err[] = "Логин должен быть не меньше 3-х символов и не больше 30";
}
# проверяем пароль
if(!preg_match("/^[a-zA-Z0-9]+$/",$_POST['pass']))
{
$err[] = "Пароль может состоять только из букв английского алфавита и цифр";
}
if(strlen($_POST['pass']) < 3 or strlen($_POST['pass']) > 30)
{
$err[] = "Пароль должен быть не меньше 3-х символов и не больше 30";
}
if($_POST['pass'] != $_POST['pass2'])
{
$err[] = "Пароли не совпадают!";
}
# проверям cod
if($_SESSION['code'] != $_POST['code'])
{
$err[] = "Вы не верно указали проверочный код.";
}
# Если нет ошибок, то добавляем в БД нового пользователя
if(count($err) == 0)
{
unset($_SESSION['code']);
$login = trim(mysql_real_escape_string(htmlspecialchars($_POST['login'])));
$password = trim(mysql_real_escape_string(htmlspecialchars($_POST['pass'])));
$pass = md5(md5(trim($password)));
mysql_query("INSERT INTO `users` SET `login`='".$login."', `pass`='".$pass."'");
echo'<div class="form-container-aut">';
echo'Вы успешно зарегистрированы! <br />';
echo'
<b>Данные для авторизации:</b> <br />
<u>Логин:</u> '.$login.'<br />
<u>Пароль:</u> '.$password.'<br />';
echo'<a href="aut.php"><input value="Пройти авторизацию!" /></a>';
echo'</div>';
/*echo'<br /> <font color="red">Обратите внимание!!!</font> <br />';
echo'На указанный при регистрации E-mail было отправленны данные для авторизации, и ссылка активации!
Если письмо не приходит длительно время - проверьте папку "Спам" <br />';*/
}else{
foreach($err AS $error)
{
$errors .= ++$n.') '.$error.'; <br />';
// Запишем в сессию значение полей, что бы юзер не вводил их повторно
$_SESSION['login'] = trim(mysql_real_escape_string(htmlspecialchars($_POST['login'])));
$_SESSION['name'] = trim(mysql_real_escape_string(htmlspecialchars($_POST['name'])));
$_SESSION['mail'] = trim(mysql_real_escape_string(htmlspecialchars($_POST['mail'])));
}
echo'<div class="form-container-aut">';
echo '<font color="red">При регистрации произошли следующие ошибки:</font> <br /> '.$errors;
echo'<br />';
echo'<a href="javascript:history.back()" onMouseOver="window.status="Назад";return true"><input value="<< Назад" type="button" /></a>';
echo'</div>';
}
}
echo'
<body>
</head>';