Вход Регистрация
Файл: www-1/forgot.php
Строк: 85
<?php
define
('cms'1);
require_once 
'core.php'
    echo 
'<div class="menu">Напоминание пароля</div>';
    echo 
'<div class="pt">';
Error_Reporting(E_ALL & ~E_NOTICE);
if (
$user
{
header('Location: ./logout.php');
}
else
{
switch(
$_GET['a'])
    {
    default:
    if (isset(
$_POST['login']) AND isset($_POST['email']))
        {
        
$error '';
        if (
mb_strlen($_POST['login']) < || mb_strlen($_POST['login']) > 20$error .= 'Неверная длина логина<br/>';
        if (
mb_strlen($_POST['email']) < || mb_strlen($_POST['email']) > 50$error .= 'Неверная длина e-mail<br/>';
            if (empty(
$error))
                {
                
$user_p mysql_fetch_array(mysql_query("SELECT `login`, `email`, `id`, `email`, `change_pass` FROM `users` WHERE `login` = '".addslashes($_POST['login'])."' AND `email` = '".addslashes($_POST['email'])."';"));
                if (!empty(
$user_p))
                    {
                        if (empty(
$user_p['change_pass']))
                            {
                                function 
gen($num){
                                
$st='';
                                
$chars 'ABDEFGHKNQRSTYZabdefhiknrstyz0123456789';
                                
$nchars=strlen($chars);
                                for (
$i=0$i<$num$i++){
                                
$st .= substr($charsrand(1,$nchars)-1,1);
                                }
                                return 
$st;
                                }
                                
$gen_p md5(md5(gen(10)));
                                
mail($user_p['email'], "Восстановление пароля"$user_p['login'].', чтобы сменить ваш пароль, перейдите по ссылке: http://portald.ru/forgot.php?a=c_pass&i='.$gen_p.'');
                                
mysql_query("UPDATE `users` SET `change_pass` = '".$gen_p."'");
                                echo 
'На вашу почту было отправлено письмо с инструкцией<br /><a href="./enter.php">Войти</a>';
                            } else echo 
'Запрос на восстановление пароля был отправлен ранее.<br /><a href="./forgot.php">Вернуться</a>';
                    } else echo 
'Неправельный логин или e-mail<br /><a href="./forgot.php">Вернуться</a>';
                } else echo 
$error.'<br /><a href="./forgot.php">Вернуться</a>';
        

        } else 
            {
        echo 
'<form class="form" action="?" method="post">';
        echo 
'
Введите ваш логин: <br/><input type="text" maxlength="20" name="login"/></br>
      E-mail*: <br/><input type="text" maxlength="20" name="email" /></br>
      <input type="submit" name="submit" value="Далее" /></form>'
;
echo 
'<br />* Вводите e-mail, указаный при регистрации.';
echo 
'<br /><a href="./enter.php">Назад</a>';
            }
    break;
    
    case 
'c_pass':
    if (isset(
$_GET['i']))
        {
        
$us mysql_fetch_array(mysql_query("SELECT `login`, `email`, `id`, `email`, `change_pass`, `pass` FROM `users` WHERE `change_pass` = '".addslashes($_GET['i'])."'"));
        if (!empty(
$us))
            {
            if (isset(
$_POST['login']) AND isset($_POST['pass']))
                    {        
                            
$error '';
                            if (
mb_strlen($_POST['pass']) < || mb_strlen($_POST['pass']) > 10$error .= 'Неверная длина пароля<br/>';
                            if (
mb_strlen($_POST['login']) < || mb_strlen($_POST['login']) > 20$error .= 'Неверная длина логина<br/>';
                                if (empty(
$error))
                                    {
                                        
$us2 mysql_fetch_array(mysql_query("SELECT `login`, `email`, `id`, `email`, `change_pass`, `pass` FROM `users` WHERE `change_pass` = '".addslashes($_GET['i'])."' AND `login` = '".addslashes($_POST['login'])."'"));
                                            if(!empty(
$us2))
                                                {
                                                
mysql_query("UPDATE `users` SET `pass` = '".addslashes(md5(md5($_POST['pass'])))."', `change_pass` = '' WHERE `change_pass` = '".$_GET['i']."' AND `login` = '".addslashes($_POST['login'])."'");
                                                echo 
'Ваш новый пароль: '.htmlentities($_POST['pass'], ENT_QUOTES).'<br /><a href="./enter.php">Вход в игру</a>';
                                                } else echo 
'Неверный пользователь<br /> <a href="?a=c_pass&amp;i='.htmlentities($_GET['i'], ENT_QUOTES).'">Назад</a>';
                                    } else echo 
$error.'<a href="?a=c_pass&amp;i='.htmlentities($_GET['i'], ENT_QUOTES).'">Назад</a>';
                    } else    
                        {
            echo 
'<form method=POST actiom="">
                  Введите ваш логин: <br/><input type="text" maxlength="20" name="login"/></br>
                  Ваш новый пароль: <br/><input type="text" maxlength="20" name="pass" /></br>
                  <input type="submit" name="submit" value="Далее" /></form>'
;
                        }
            } else 
header('Location: ./enter.php');
        } else 
header('Location: ./enter.php');
    break; 
    }
}
echo 
'</div>';
include 
'./include/foot.php';
?>
Онлайн: 0
Реклама