File size: 4.99Kb
<?php
$title = 'Забыл пароль';
require_once ('../../system/function.php');
require_once ('../../system/header.php');
if(isset($user['id'])){
header('Location: /');
exit();
}
$act = isset($_GET['act']) ? $_GET['act'] : null;
switch($act){
default:
echo '<div class="title">Восстановление пароля | Шаг 1 </div>';
if(isset($_REQUEST['true'])){
$login = strong($_POST['login']);//фильтрируем
$email = strong($_POST['email']);
$_SESSION['email'] = $email;
$_SESSION['login'] = $login;
if(empty($login)){
$_SESSION['err'] = 'Вы не ввели логин!';
header('Location: ?');
exit;
}
if(mb_strlen($login) > 50 or mb_strlen($login) < 3){
$_SESSION['err'] = 'Введите логин от 50 до 20 символов!';
header('Location: ?');
exit;
}
/*
if (!preg_match('|^[А-Яа-яЁ-ёa-zA-Z0-9\-]+$|i', $login)){
$_SESSION['err'] = 'Запрещеные символы в логине!!';
header('Location: ?');
exit;
}
*/
if(empty($email)){
$_SESSION['err'] = 'Введите EMAIL!';
header('Location: ?');
exit;
}
if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
$_SESSION['err'] = 'Формат EMAIL не верен!';
header('Location: ?');
exit;
}
$sqldb = mysql_fetch_array(mysql_query("SELECT `login`, `email` FROM `users` WHERE `login` = '".$login."' and `email`='".$email."' LIMIT 1"));
if(!empty($login) && !empty($email))
if($sqldb == 0){
$_SESSION['err'] = 'Данные не найдены';
header('Location: ?');
exit;
}
$rou = rand(100000,999999);
mysql_query("UPDATE `users` SET `reparo_pass` = '".$rou."' WHERE `login` = '".$login."'");
$_SESSION['email'] = $email;
header('Location: /Login/Recovery/Code');
$title = $_SERVER['HTTP_HOST'];
$msg = '
Доброго времени суток '.$login.'!
------------------------------
Ваш проверочный код: '.$rou.' ';
$sets = 'admin@'.$_SERVER['HTTP_HOST'];
$adds = "From: <" . $sets . ">\r\n";
$adds .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
mail($email, '=?utf-8?B?'.base64_encode('Восстановление пароля '.$HOME).'?=', $msg, $adds);
exit();
}
if(isset($_SESSION['err'])){
echo '<div class="podmenu"><font color="red"><b><i>'.$_SESSION['err'].'</i></b></font></div>';
}
session_destroy();
echo '<div class="podmenu">
<form action="" method="POST">
*Ваш логин:<br /><input type="text"placeholder="Логин" name="login" value="'.$_SESSION['login'].'" maxlength="20" /><br />
*Ваш e-mail:<br /><input type="text"placeholder="Почта" name="email" value="'.$_SESSION['email'].'" maxlength="40" /><br />
<input type="submit" name="true" value="Далее" />
</form></div>';
include_once ('../../system/footer.php');
break;
case 'step2':
echo '<div class="title">Восстановление пароля | Шаг 2 </div>';
if(isset($_REQUEST['true'])){
$cod = strong($_POST['cod']);//фильтрируем
if(empty($cod)){
$_SESSION['err'] = 'Не введен код!';
header('Location: ?');
exit;
}
$sqldb = mysql_fetch_array(mysql_query("SELECT `reparo_pass` FROM `users` WHERE `reparo_pass` = '".$cod."' LIMIT 1"));
if(!empty($cod))
if($sqldb == 0){
$_SESSION['err'] = 'Данные не верны!';
header('Location: ?');
exit;
}
if (!preg_match('|^[a-z0-9\-]+$|i', $cod)){
$_SESSION['err'] = 'Запрещенные символы!';
header('Location: ?');
exit;
}
$rou = rand(1000000000,5000000000);
mysql_query("UPDATE `users` SET `pass` = '".md5(md5(md5($rou)))."' WHERE `reparo_pass` = '".$cod."'");
mysql_query("UPDATE `users` SET `reparo_pass` = '".md5(md5(md5(md5($rou))))."' WHERE `reparo_pass` = '".$cod."'");
echo '<div class="podmenu"><b>На Ваш e-mail Мы отправили письмо с паролем</b></div>';
include_once ('../../system/footer.php');
$title = $_SERVER['HTTP_HOST'];
$msg = '
Вами была произведена операция по восстановлению пароля на сайте '.$HOME.'
Ваш новый пароль: '.$rou.'
-------------------------
Кому: '.$_SESSION['email'].'
Пароль сгенерирован автоматически, просим Вас после авторизации сменить его! С ув. MASTERU.SITE!';
$sets = 'admin@'.$_SERVER['HTTP_HOST'];
$adds = "From: <" . $sets . ">\r\n";
$adds .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
mail($_SESSION['email'], '=?utf-8?B?'.base64_encode('Восстановление пароля '.$HOME).'?=', $msg, $adds);
session_destroy();
exit();
}
if(isset($_SESSION['err'])){
echo '<div class="podmenu"><font color="red"><b><i>'.$_SESSION['err'].'</i></b></font></div>';
}
unset($_SESSION['err']);
echo '<div class="podmenu">
<div class="podmenu"><b>На ваш E-mail выслан проверочный код введите его в форму ниже.</b></div>
<form action="" method="POST">
<br /><input type="text"placeholder="Код" name="cod" maxlength="20" /><br />
<input type="submit" name="true" value="Восстановить" />
</form></div>';
include_once ('../../system/footer.php');
break;
}
?>