Файл: trus/user/updatepass.php
Строк: 40
<?php
# Заголовок>Функции>Шапка
$title = 'Смена пароля';
require ('../system/function.php');
require ('../system/header.php');
#Навигация
echo "<div class='card-header'>";
echo "<a href='/' data-toggle='tooltip' data-placement='right' title='На главную '><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo '<a href="cab.php">Кабинет</a>';
echo "<i class='fa fa-angle-right fa-fw'></i>";
echo ' Смена пароля';
echo "</div>";
$act = isset($_GET['act']) ? $_GET['act'] : null;
switch($act)
{
default:
echo '<div class="list-group-item"><form action="" method="POST">
Старый пароль:<br /><input type="text" name="hp" maxlength="25" /><br />
Новый пароль:<br /><input type="text" name="np" maxlength="25" /><br />
Повторите пароль:<br /><input type="text" name="npp" maxlength="25" /><br /></div><div class="list-group-item">
<a href="/user/updatepass.php?act=smena">Изменить</a>
</form></div>
';
require_once ('../system/footer.php');
case 'smena':
$np = strong($_POST['np']);
$npp = strong($_POST['npp']);
$hp = md5(md5(md5(strong($_POST['hp']))));
if (empty($hp) or empty($np))
err('Введите старый и новый пароль!');
if ($np != $npp)
err('Новый пароль подтвержден неверно!');
if (mb_strlen($hp) < 3 or mb_strlen($np) < 3)
err('Введите старый и новый пароль от 3 символов!');
if (!preg_match('|^[a-z0-9-]+$|i', $np))
err('Кириллица запрещена в новом пароле!');
if (!preg_match('|^[a-z0-9-]+$|i', $hp))
err('Кириллица запрещена в старом пароле!');
$sql = $db->super_query("SELECT `pass` FROM `users` WHERE `id` = '".$user['id']."'");
$db->query("UPDATE `users` SET `pass` = '".md5(md5(md5($np)))."' WHERE `id` = '".$user['id']."'");
if ($sql['pass'] != $hp)
err('Неверно введён старый пароль!');
if (isset($_COOKIE['uslog']) and isset($_COOKIE['uspass']))
setcookie('uspass', md5(md5(md5($np))), TIME + 86400 * 31, '/');
echo msg('Пароль успешно изменен!');
require_once ('../system/footer.php');
exit;
break;
}
?>