Файл: pass.php
Строк: 99
<?
include_once 'sys/includes/start.php';
include_once 'sys/includes/compress.php';
include_once 'sys/includes/sess.php';
include_once 'sys/includes/home.php';
include_once 'sys/includes/settings.php';
include_once 'sys/includes/db_connect.php';
include_once 'sys/includes/ipua.php';
include_once 'sys/includes/fnc.php';
include_once 'sys/includes/shif.php';
$show_all=true;
include_once 'sys/includes/user.php';
only_unreg();
$set['title']='Восстановление пароля';
include_once 'sys/includes/header.php';
title();
auter();
if (isset($_POST['nick']) && isset($_POST['mail']) && $_POST['nick']!=NULL && $_POST['mail']!=NULL)
{
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `nick` = '".my_esc($_POST['nick'])."'"), 0)==0)
{
$err="Пользователь с таким логином не зарегистрирован!";
}
else if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `nick` = '".my_esc($_POST['nick'])."' AND `ank_mail` = '".my_esc($_POST['mail'])."'"), 0)==0)
{
$err='Неверный адрес E-mail или информация о E-mail отсутствует!';
}else{
$q=mysql_query("SELECT * FROM `user` WHERE `nick` = '".my_esc($_POST['nick'])."' LIMIT 1");
$user2=mysql_fetch_assoc($q);
$new_sess=substr(md5(passgen()), 0, 20);
$subject="Восстановление пароля";
$regmail="Здравствуйте ".$user2['nick']."<br />
Вы активировали восстановление пароля<br />
Для установки нового пароля перейдите по ссылке:<br />
<a href='http://$_SERVER[HTTP_HOST]/pass.php?id=$user2[id]&set_new=$new_sess'>http://$_SERVER[HTTP_HOST]/pass.php?id=$user2[id]&set_new=$new_sess</a><br />
Данная ссылка действительна до первой авторизации под своим логином ($user2[nick])<br />
С уважением, администрация сайта!<br /><br /><br />
Наш сайт стоит на движке <a href='http://s-klub.ru'>S-klub CMS</a><br />
Автором которого является Simptom<br />
";
$adds="From: "password@$_SERVER[HTTP_HOST]" <password@$_SERVER[HTTP_HOST]>n";
$adds="Content-Type: text/html; charset=utf-8n";
mail($user2['ank_mail'],'=?utf-8?B?'.base64_encode($subject).'?=',$regmail,$adds);
mysql_query("UPDATE `user` SET `sess` = '$new_sess' WHERE `id` = '$user2[id]' LIMIT 1");
msg("Ссылка для установки нового пароля отправлена на ваш E-Mail!");
}
}
if (isset($_GET['id']) && isset($_GET['set_new']) && strlen($_GET['set_new'])==20 && mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '".intval($_GET['id'])."' AND `sess` = '".my_esc($_GET['set_new'])."'"), 0)==1)
{
$q=mysql_query("SELECT * FROM `user` WHERE `id` = '".intval($_GET['id'])."' LIMIT 1");
$user2=mysql_fetch_assoc($q);
if (isset($_POST['pass1']) && isset($_POST['pass2']))
{
if ($_POST['pass1']==$_POST['pass2'])
{
if (strlen2($_POST['pass1'])<6)
{
$err='По соображениям безопасности новый пароль не может быть короче 6-ти символов!';
}
if (strlen2($_POST['pass1'])>32)
{
$err='Длина пароля превышает 32 символа!';
}
}else{
$err='Новый пароль не совпадает с его подтверждением!';
}
if (!isset($err))
{
setcookie('id_user', $user2['id'], time()+60*60*24*365);
mysql_query("UPDATE `user` SET `pass` = '".shif($_POST['pass1'])."' WHERE `id` = '".$user2['id']."' LIMIT 1");
setcookie('pass', cookie_encrypt($_POST['pass1'],$user2['id']), time()+60*60*24*365);
msg('Пароль успешно изменен');
}
}
err();
echo "<form action='/pass.php?id=$user2[id]&set_new=".esc($_GET['set_new'],1)."&$passgen' method='post'>";
echo "<div class='forum_tema'>";
echo "<b>Логин:</b><br />";
echo "<input type='text' disabled='disabled' value='".$user2['nick']."' maxlength='32' size='16' /><br />";
echo "</div>";
echo "<div class='forum_tema'>";
echo "<b>Новый пароль:</b><br />";
echo "<input type='password' name='pass1' value='' /><br />";
echo "</div>";
echo "<div class='forum_tema'>";
echo "<b>Подтверждение:</b><br />";
echo "<input type='password' name='pass2' value='' /><br />";
echo "</div>";
echo "<div class='forum_tema'>";
echo "<input type='submit' name='save' value='Изменить' />";
echo "</div>";
echo "</form>";
}else{
err();
echo "<form action='?$passgen' method='post'>";
echo "<div class='forum_tema'>";
echo "<b>Логин:</b><br />";
echo "<input type='text' name='nick' title='Логин' value='' maxlength='32' size='16' /><br />";
echo "</div>";
echo "<div class='forum_tema'>";
echo "<b>E-mail:</b><br />";
echo "<input type='text' name='mail' title='E-mail' value='' maxlength='32' size='16' /><br />";
echo "</div>";
echo "<div class='forum_tema'>";
echo "<input type='submit' value='Далее' title='Далее' />";
echo "</div>";
echo "</form>";
echo "<div class='forum_tema'><b>";
echo "На ваш e-mail придет ссылка для установки нового пароля.<br />";
echo "Если у вас в анкете отсутствует запись о вашем e-mail, восстановление пароля невозможно.<br />";
echo "</b></div>";
}
echo "<div class='forum_tema'>";
echo "<a href='/reg.php'>Регистрация</a><br />";
echo "</div>";
echo "<div class='forum_tema'>";
echo "<a href='/aut.php'>Авторизация</a><br />";
echo "</div>";
include_once 'sys/includes/footer.php';
?>