Размер файла: 4.27Kb
<?php
// проверка наличия авторизации
if (isset($user))
{
# Перенаправляем на главную
header('Location: /');
}
# Заголовок модуля
$system['page_title'] = 'Регистрация';
# Шапка модуля
require_once(HOME .'/incfiles/header.php');
// Обрабатываем запрос на регистрацию
if (isset($_POST['reg_submit'])) {
# Логин
$reg_login = txt($_POST['reg_login']);
# Проверка ввода логина
if (empty($reg_login)) $err .= '<div class="menu">Не введен логин</div>';
# Проверка длины логина
if (!empty($reg_login) && (strlen($reg_login) < 3 || strlen($reg_login) > 32)) $err .= '<div class="menu">Неверная длина логина. Допустимо от 3 до 32 символов</div>';
# проверка логина на наличие символики
if (!preg_match('|^[a-z0-9\-]+$|i', $reg_login)) {
$err .= '<div class="menu">Логин может состоять только из букв и цифр!</div>';
}
# Проверка занятости логина
if (mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `login` = '". input($reg_login) ."'")) != 0) $err .= '<div class="menu">Логин ' . $reg_login . ' занят. Выберите другой</div>';
# Пароль
$reg_password = txt($_POST['reg_password']);
# Проверка ввода пароля
if (empty($reg_password)) $err .= '<div class="menu">Не введен пароль</div>';
# Проверка длины пароля
if (!empty($reg_password) && (strlen($reg_password) < 5 || strlen($reg_password) > 64)) $err .= '<div class="menu">Неверная длина пароля. Допустимо от 5 до 64 символов</div>';
# Повторный пароль
$reg_password2 = txt($_POST['reg_password2']);
# Проверка ввода повторного пароля
if (empty($reg_password2)) $err .= '<div class="menu">Не введен повторный пароль</div>';
# Проверка совпадения паролей
if (!empty($reg_password2) && $reg_password != $reg_password2) $err .= '<div class="menu">Пароли не совпадают</div>';
// Проводим регистрацию
if (!isset($err)) {
# Кодируем пароль
$reg_password = encrypt($reg_password);
# Запрос на регистрацию
mysql_query("INSERT INTO `users` SET `login` = '". input($reg_login) ."', `password` = '". input($reg_password) ."', `date_reg` = '". time() ."', `date_last_entry` = '". time() ."'");
# Выводим уведомление
echo '<div class="title">Завершение регистрации</div>
<div class="menu">
Регистрация на сайте успешно завершена. Вы можете войти на сайт под регистрационными данными или перейти ниже по ссылке быстрой авторизации.<br />
<a href="/?login='. input($reg_login) .'&password='. input($reg_password2) .'">Быстрая авторизация</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
}
}
error($err);
echo '<div class="title">Регистрация</div>
<form method="post" action="/user/registration.php">
<div class="menu">
Логин: (max 32)<br />
<input type="text" name="reg_login" value="'. output($_POST['reg_login']) .'" /><br />
<span class="small_info">* Только англ. символы.</span><br />
Пароль: (max 64)<br />
<input type="password" name="reg_password" /><br />
Повторите пароль:<br />
<input type="password" name="reg_password2" /><br />
<input type="submit" name="reg_submit" value="Регистрировать" />
</div>
</form>';
echo '<div class="block">
» <a href="/user/entry.php">Авторизация</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
?>