Вход Регистрация
Файл: imstat.ru/str/pass.php
Строк: 47
<?php
ob_start
();
define('NTOP'1);
$title 'Восстановление пароля';
require_once (
'../system/connect.php');
require_once (
'../system/core.php');
require_once (
'../system/function.php');
require_once (
'head.php');
echo
'<div class="topik">Выслать на email</div>';
switch (
$act){
default:
unreg();
if(!isset(
$_POST['ok'])){
echo 
'<div class="stat"><form action="pass.php?" method="POST">Логин:<br/>
<input type="text" class="input" name="login" maxlength="30" value="" size="20" maxlength="50" /><br/>
<input name="ok" type="submit" value="Восстановить" /><br/></div>'
;
}else{
$error '';
if(empty(
$_POST['login'])){
$error .= 'Не введен логин!<br/>';
}
if(
mb_strlen($_POST['login']) > 30){
$error .= 'Поле "Логин" должно быть не меньше 5 и не больше 30 символов!<br/>';
}
if(!empty(
$error)){
echo 
'<div class="error">'.$error.'<br>
<a href="/str/pass.php">Назад</a></div>'
;
}else{
$login filter($_POST['login']);
$user_isset mysql_query("SELECT * FROM `".$prefix."users` WHERE `login` = '".$login."'");
                        
if(
mysql_num_rows($user_isset) > 0){    
$row mysql_fetch_array($user_isset);
$error '';
if(
$row['antiflud'] > time()-86400){
$error .= 'Восстанавливать пароль можно 1 раз в 24 часа.<br/>';
}
if(empty(
$row['mail'])){
$error .= 'У данного пользователя не указан e-mail.<br/>';
}
if(!empty(
$error)){
echo 
'<div class="stat">'.$error.'<br>
<a href="/str/pass.php">Назад</a></div>'
;
}else{
$key key_rand();
$update mysql_query("UPDATE `".$prefix."users` SET `antiflud` = '".time()."', `key` = '".$key."' WHERE `id` = '".$row['id']."'");
$subject "Восстановление пароля на ".$_SERVER['HTTP_HOST'];
$body "Вы сделали запрос на восстановление пароля к аккаунту на ".$_SERVER['HTTP_HOST']."n";
$body .= "Для восстановления пароля , вам необходимо пройти по ссылке ниже , иначе операция не возможна.n";
$body .= "Ссалка: http://".$_SERVER['HTTP_HOST']."/str/pass.php?act=ok&user_id=".$row['id']."&key=".$key." n";
$headers "From: ".$set['mail']." n";
$headers .= "Content-Type: text/plain; charset=utf-8n";
mail($row['mail'], $subject$body$headers);
echo 
'<div class="stat">На ваш e-mail отправлена инструкция по восстановлению пароля!</div>';
}}else{
echo 
'<div class="stat">Пользователь не найден в базе , или данные не верны!<br>
<a href="/str/enter.php">Назад</a></div>'
;
}}}
break;
case 
'ok':
if(isset(
$_GET['user_id']) AND isset($_GET['key'])){
$id abs(intval($_GET['user_id']));
$key filter($_GET['key']);
$test mysql_query("SELECT * FROM `".$prefix."users` WHERE `id` = '".$id."' AND `key` = '".$key."' AND `antiflud` > '".(time()-86400)."'");
if(
mysql_num_rows($test) != 0){
$new_pass password();
$update mysql_query("UPDATE `".$prefix."users` SET `key` = '', `password` = '".md5($new_pass)."' WHERE `id` = '".$id."'");
echo 
'<div class="stat">Пароль успешно восстановлен!<br>Пароль: '.$new_pass.'</div>';
}else{
echo 
'<div class="stat">Пароль не восстановлен!</div>';                
}}else{
echo 
'<div class="stat">Пароль не восстановлен!</div>';                
}
break;
}

require_once (
'foot.php');
?>
Онлайн: 2
Реклама