Файл: modules/user/registration.php
Строк: 128
<?php
/****
* @package LiveCMS
* @link livecms.org
* @author MyZik
* @version See attached file VERSION.txt
* @license See attached file LICENSE.txt
* @copyright Copyright (C) LiveCMS Development Team
****/
/**
* Проверяем наличие авторизации
**/
if (isset($user)) {
# Перенаправляем на главную
header('Location: /');
}
$title = $lang['registration']; // Заголовок страницы
$module = 'registration'; // Модуль
require_once(HOME .'/incfiles/header.php'); // Подключаем шапку
/**
* Обрабатываем запрос на регистрацию
**/
if (isset($_POST['reg_submit'])) {
# Читаем данные с формы и обрабатываем
$reg_login = txt($_POST['reg_login']); // Логин
$reg_sex = ($_POST['sex'] == 'm' ? 'm' : 'w');
$reg_name = (!empty($_POST['name']) ? '' . txt($_POST['name']) . '' : ''); // Имя
$reg_about = (!empty($_POST['about']) ? '' . txt($_POST['about']) . '' : ''); // Доп. Информация
/**
* Проверка ввода логина
**/
if (empty($reg_login))
$err[] = $lang['login_empty'];
/**
* Проверка длины логина
**/
if (!empty($reg_login) && (strlen($reg_login) < 3 || strlen($reg_login) > 15))
$err[] = $lang['invalid_login_length'];
/**
* Проверяем логин на занятость
**/
if (mysql_num_rows(mysql_query("SELECT * FROM `users` WHERE `login` = '". input($reg_login) ."'")) != 0)
$err[] = $lang['login_name'] . $reg_login . $lang['login_is_busy'];
$reg_password = txt($_POST['reg_password']);
/**
* Проверка ввода пароля
**/
if (empty($reg_password))
$err[] = $lang['empty_password'];
/**
* Проверка длины пароля
**/
if (!empty($reg_password) && (strlen($reg_password) < 5 || strlen($reg_password) > 64))
$err[] = $lang['invalid_password_length'];
$reg_password2 = txt($_POST['reg_password2']);
/**
* Проверка ввода повторного пароля
**/
if (empty($reg_password2))
$err[] = $lang['empty_password2'];
/**
* Проверка совпадения паролей
**/
if (!empty($reg_password2) && $reg_password != $reg_password2)
$err[] = $lang['invalid_passwords'];
/**
* Проверка ввода каптчи
**/
$reg_code = $_POST['reg_code'];
if ($reg_code != $_SESSION['code'])
$err[] = 'Неверный проверочный код';
/**
* Если нет ошибок, регистрируем юзера
**/
if (!isset($err)) {
# Кодируем пароль
$reg_password = encrypt($reg_password);
# Запрос на регистрацию
mysql_query("INSERT INTO `users` SET
`login` = '" . input($reg_login) . "',
`password` = '" . input($reg_password) . "',
`sex` = '" . $reg_sex . "',
`date_reg` = '" . time() . "',
`date_last_entry` = '" . time() . "',
`name` = '" . input($reg_name) . "',
`about` = '" . input($reg_about) . "'");
# Записываем личные настройки пользователя
mysql_query("INSERT INTO `user_settings` SET
`language` = '" . $cms_set['language'] . "',
`num_pages` = '" . $cms_set['num_pages'] . "',
`sex_view` = '" . $cms_set['sex_view'] . "',
`show_avatars` = '" . $cms_set['show_avatars'] . "',
`theme` = '" . $cms_set['theme'] . "'");
# Выводим уведомление
echo '<div class="sohr">' . $lang['registration_end'] . '</div>
<div class="main">' .
$lang['registration_successful'] . '<br />
<a href="/?login='. input($reg_login) .'&password='. input($reg_password2) .'">' . $lang['fast_authorization'] . '</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
} else {
echo error($err);
}
}
echo '<div class="sohr">' . $lang['registration'] . '</div>' .
'<form method="post" action="/user/registration.php">' .
'<div class="main">' .
$lang['login_name'] . ' [max. 15] <span class="red">*</span><br />' .
'<input type="text" name="reg_login" value="' . output($_POST['reg_login']) . '" /><br />' .
$lang['name'] . ':<br />' .
'<input type="text" name="name" value="' . output($_POST['name']) . '" /><br />' .
$lang['sex'] . ': <span class="red">*</span><br />' .
'<select name="sex">' .
'<option value="m">' . $lang['sex_m'] . '</option>' .
'<option value="w">' . $lang['sex_w'] . '</option>' .
'</select><br />' .
$lang['password'] . ': [max. 64] <span class="red">*</span><br />' .
'<input type="password" name="reg_password" /><br />' .
$lang['password2'] . ': <span class="red">*</span><br />' .
'<input type="password" name="reg_password2" /><br />' .
$lang['about_yourself'] . ':<br />' .
'<textarea name="about">' . output($_POST['about']) . '</textarea><br />' .
$lang['captcha_code'] . ':<br />';
echo captcha();
echo '<input type="text" name="reg_code" size="5"/><br />' .
'<input type="submit" name="reg_submit" value="' . $lang['register_me'] . '" />' .
'</div></form>';
echo '<div class="main">' . $lang['required_fields'] . '</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
?>