Просмотр файла modules/user/secure.php
- <?php
- // проверка наличия авторизации
- if (!isset($user))
- {
- # Перенаправляем на главную
- header('Location: /');
- }
- # Заголовок модуля
- $system['page_title'] = 'Безопасность';
- # Шапка модуля
- require_once(HOME .'/incfiles/header.php');
- // привязка к email
- if (isset($_POST['email']))
- {
- $email = txt($_POST['email']);
- # Проверка длины логина
- if (!empty($email) && (strlen($email) < 3 || strlen($email) > 72)) $err .= 'Неверная длина E-Mail. Допустимо от 3 до 72 символов<br />';
- # Формат
- if (!empty($email) && !preg_match('|^([a-z0-9_\.\-]{1,20})@([a-z0-9\.\-]{1,20})\.([a-z]{2,4})$|ius', $email)) $err .= 'Неверный формат E-Mail<br />';
- # Проверка занятости логина
- if (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `email` = '". input($email) ."'"), 0) != 0) $err .= 'E-Mail ' . $email . ' занят. Выберите другой<br />';
- if (!isset($err))
- {
- # Сохраняем данные
- mysql_query("UPDATE `users` SET `email` = '". input($email) ."' WHERE `id` = '$user[id]' LIMIT 1");
- echo '<div class="title">Привязка к E-Mail</div>
- <div class="menu">
- Ваш аккаунт успешно привязан к E-Mail '. output($email) .'
- </div>';
- echo '<div class="block">
- » <a href="/user/secure.php">Безопасность</a><br />
- » <a href="/user/cabinet.php">Личный кабинет</a><br />
- » <a href="/">На главную</a>
- </div>';
- # Ноги модуля
- require_once(HOME .'/incfiles/footer.php');
- }
- }
- // смена пароля
- if (isset($_POST['change_password']))
- {
- # Старый пароль
- $old_password = txt($_POST['old_password']);
- # Проверка ввода пароля
- if (empty($old_password)) $err .= 'Не введен старый пароль<br />';
- # Шифруем старый пароль
- if (!isset($err)) $old_password = encrypt($old_password);
- # Проверяем правильность
- if (!empty($old_password) && $old_password != $user['password']) $err .= 'Неверный текущий пароль<br />';
- # Пароль
- $password = txt($_POST['password']);
- # Проверка ввода пароля
- if (empty($password)) $err .= 'Не введен новый пароль<br />';
- # Проверка длины пароля
- if (!empty($password) && (strlen($password) < 5 || strlen($password) > 64)) $err .= 'Неверная длина нового пароля. Допустимо от 5 до 64 символов<br />';
- # Повторный пароль
- $password2 = txt($_POST['password2']);
- # Проверка ввода повторного пароля
- if (empty($password2)) $err .= 'Не введен повторный пароль<br />';
- # Проверка совпадения паролей
- if (!empty($password2) && $password != $password2) $err .= 'Пароли не совпадают<br />';
- // запись
- if (!isset($err))
- {
- # Кодируем пароль
- $password = encrypt($password);
- # Сохраняем данные
- mysql_query("UPDATE `users` SET `password` = '". input($password) ."' WHERE `id` = '$user[id]' LIMIT 1");
- echo '<div class="title">Изменение пароля</div>
- <div class="menu">
- Ваш пароль успешно изменен
- </div>';
- echo '<div class="block">
- » <a href="/user/secure.php">Безопасность</a><br />
- » <a href="/user/cabinet.php">Личный кабинет</a><br />
- » <a href="/">На главную</a>
- </div>';
- # Ноги модуля
- require_once(HOME .'/incfiles/footer.php');
- }
- }
- error($err);
- echo '<div class="title">Смена пароля</div>
- <form method="post" action="/user/secure.php">
- <div class="menu">
- Текущий пароль:<br />
- <input type="password" name="old_password" /><br />
- Новый пароль:<br />
- <input type="password" name="password" /><br />
- Повторите пароль:<br />
- <input type="password" name="password2" /><br />
- <input type="submit" name="change_password" value="Изменить" />
- </div>
- </form>';
- if (!empty($user['email']))
- {
- echo '<div class="title">Привязка к E-Mail</div>
- <div class="menu">
- Ваш аккаунт привязан к E-Mail:<br />
- <u>'. output($user['email']) .'</u><br />
- <span class="small_info">* Смена E-Mail не возможна</span><br />
- </div>';
- }
- else
- {
- echo '<div class="title">Привязка к E-Mail</div>
- <form method="post" action="/user/secure.php">
- <div class="menu">
- Для обеспечения безопасности вашего аккаунта рекомендуется привязать его к вашему почтовому ящику. В этом случае вы сможете восстановить пароль в случае, если забудете его<br />
- Ваш E-Mail:<br />
- <input type="text" name="email" /><br />
- <span class="small_info">* Смена E-Mail в дальнейшем будет не возможна</span><br />
- <input type="submit" value="Привязать" />
- </div>
- </form>';
- }
- echo '<div class="block">
- » <a href="/user/cabinet.php">Личный кабинет</a><br />
- » <a href="/">На главную</a>
- </div>';
- # Ноги модуля
- require_once(HOME .'/incfiles/footer.php');
- ?>