View file pages/lost_pass.php

File size: 3.6Kb
<?
include('../core/core.php');
include(BASEDIR.INC.'func.php');
include(BASEDIR.INC.'session.php');
include(BASEDIR.INC.'session_user.php');
$mode = htmlspecialchars($_GET['mode']);
include(BASEDIR.INC.'head.php');
echo '<div class="razdel">Востановление пароля</div>';
echo'<div class="menu">';
show_title('Востановление пароля');
switch ($mode):
case 'index':
echo'<form action="?mode=chek" method="post">
Ваш логин:<br />
<input name="login" type="text" maxlength="30" /><br />
Спец.Код:<br />
<input name="code_pass" type="text" maxlength="8" /><br />
<img src="/'.INC.'capatcha.php"><br />Введите код:<br />
<input type="text" name="code" value="" size="4" maxlength="4" /><br />
<input name="" type="submit" value="Продолжить" />
</form>';
break;
case 'chek':
$code = htmlspecialchars($_POST['code']);
$code_pass = htmlspecialchars($_POST['code_pass']);
$login = mysql_real_escape_string(htmlspecialchars($_POST['login']));
if($code == !NULL && $login == !NULL){
if($code == $_SESSION['getkode']){
if(!preg_match("/([^a-zA-Z0-9\-])/", $login)){
$q = mysql_query('SELECT * FROM users WHERE login = "'.$login.'"');
if(mysql_num_rows($q) != 0){ 
$q = mysql_fetch_assoc($q);
if($q['code_pass'] == $code_pass){
if($q['lost_pass_time'] <= time()){
if(!empty($q['login'])){
echo gen_code(6);
$cos = $_SESSION['gener'];
$my = sha1(md5(md5(sha1($cos))));
$time=time() + (3600 * 12);
mysql_query("UPDATE `users` SET `pass`='$my',`lost_pass_time`='$time' WHERE login = '".$q['login']."';");
$mst = 'Здравствуйте, '.$q['login'].' 
Вами была произведена операция по восстановлению пароля на сайте http://'.SITE.' 

Новый пароль От вашего аккаунта: '.$cos.'

Если это письмо попало к вам по ошибке или вы не собираетесь восстанавливать пароль, то просто проигнорируйте его';
$tit ='Подтверждение восстановления пароля на сайте http://'.SITE.'';
addmail($q['mail'],$tit, $mst);
echo 'Письмо с инструкцией по востановлению пароля успешно выслано на E-mail указанный в профиле<br />';
echo 'Внимательно прочтите письмо и выполните все необходимые действия для восстановления пароля<br />';
echo 'Восстанавливать пароль можно не чаще чем раз в 12 часов';
//header("Location: /send_mail/lost_pass.php?mail=".$q['mail']."");
} else {echo'Ошибка! Пользователь с данным логином не зарегестрирован!'; }
} else {echo'Ошибка! С момента последнего восстановления пароля прошло менее 12 часов!'; }
} else {echo'Спец. Код неверный!'; }
} else {echo'Такого логина не существует!'; }
} else {echo'Логин введен неправельно!'; } 
} else {echo'Неверый код с картинки!'; }
} else {echo'Все поля должны быть заполнены!'; }
break;
case 'ok':
$_SESSION['time'] = time()+(3600 * 12);
echo'Новый пароль выслан вам на почту.';
break;
default: 
header ('location: ?mode=index'); 
endswitch;
echo'</div>';
echo'<div class="menu"><a href="/">На главную</a></div>';

include(BASEDIR.INC.'foot.php');
?>