View file modules/kabinet/lose_pass.php

File size: 6.33Kb
<?php
########################################
##	           WAP-ENGINE             ##
########################################
##                                    ##
##  Автор : CHUMA (Токарев Владимир)  ##
##  e-mail : [email protected]     ##
##  WAP : http://wap-engine.ru        ##
##                                    ##
########################################
##         ВЫ НЕ ИМЕЕТЕ ПРАВО         ##
##        ИЗМЕНЯТЬ КОД СКРИПТА        ##
##  ДЛЯ ДАЛЬНЕЙШЕГО РАСПРОСТРАНЕНИЯ!  ##
########################################
include ('../../config.php');
include ('../../templates/run.php');
include ('../../templates/func.php');
####################
if(empty($_GET['act']))
 {
  $title_page = 'Восстановление пароля';
  include '../../themes/'.$themes.'.php';
if ($portal=='off')
 {
  echo'<p align="center">'.$offmes.'</p>';
 }
if ($portal=='on')
 {
  echo'<p class="modul_name"align="center">Восстановление пароля</p>';
  
  if($_GET['err'] == 1)
   {
    echo'<p class="err">Ошибка!!! Вы не ввели логин.</p>';
   }
  if($_GET['err'] == 2)
   {
    echo'<p class="err">Ошибка!!! Вы не ввели e-mail.</p>';
   }
  if($_GET['err'] == 3)
   {
    echo'<p class="err">Ошибка!!! Такого пользователя нет в базе.</p>';
   }
  if($_GET['err'] == 4)
   {
    echo'<p class="err">Ошибка!!! Введенный вами e-mail не совпадает с тем, что в базе.</p>';
   }
  
  echo'<form method="post" action="lose_pass.php?act=1&amp;'.session_name().'='.session_id().'">
  <p class="b">Логин:<br /><input name="log" value="" /><br />';
  echo'e-mail:<br /><input name="mail" value="" /><br />
  <input value="Восстановить" type="submit" /></p></form>';
  echo'<p class="b">';
  echo'ВНИМАНИЕ!!! Так как пароль на сайте хранится в зашифрованном виде, то восстановить пароль можно, только генерацией нового.<br />
  Новый пароль будет выслан на указанный e-mail. E-MAIL указывайте тот, который вы ввели при регистрации.';
  echo'</p>';
}
  include('../../templates/foot.php');
 }
####################
if(@$_GET['act'] == 1)
 {
  $tologin = filter($_POST['log']);
  $tomail = strtolower(filter($_POST['mail']));
  
  if(file_exists('../../data/users/'.$tologin.'.php'))
   {
	user_data('../../data/users/'.$tologin.'.php');  # Считывание данных пользователя находится в файле templates/func.php
   }
  
  if(empty($tologin))
   {
    header('Location: lose_pass.php?err=1');
   }
  elseif(empty($tomail))
   {
    header('Location: lose_pass.php?err=2');
   }
  elseif(!file_exists('../../data/users/'.$tologin.'.php'))
   {
    header('Location: lose_pass.php?err=3');
   }
  elseif($tomail != $email)
   {
    header('Location: lose_pass.php?err=4');
   }
  else
   {
    $simvols  = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	$simvols_size = strlen($simvols)-1;
    
	for($i=0; $i <= 6; $i++)
	 {
	  $rand = rand(0, $simvols_size);
	  $new_pass .= $simvols[$rand];
	 }
	 
	 $passw = md5(md5($new_pass));
	 
	 $str_to_user_file = str_user_data(); # Строка данных пользователя находится в файле templates/func.php
	 
	 $user_file = fopen('../../data/users/'.$tologin.'.php','w');
     flock ($user_file,LOCK_EX);
     fputs ($user_file,"<?php\r\n/*\r\n$str_to_user_file\r\n*/\r\n?>");
     fflush ($user_file);
     flock ($user_file,LOCK_UN);
     fclose($user_file);
	 
	 $subject  = 'Восстановление пароля на сайте '.$home;
     $mail     = "Здравствуйте. Поступил запрос на восстановление пароля от вашего аккаунта на сайте $home\n\nВаши данные для входа:\nЛогин: $login\nНовый пароль: $new_pass\n\nЭто письмо сгенерировано автоматически, и отвечать на него нет смысла";
     
     $utfwin = array("А"=>"\xC0", "Б"=>"\xC1", "В"=>"\xC2", "Г"=>"\xC3", "Д"=>"\xC4", "Е"=>"\xC5", "Ё"=>"\xA8", "Ж"=>"\xC6", "З"=>"\xC7", "И"=>"\xC8", "Й"=>"\xC9", "К"=>"\xCA", "Л"=>"\xCB", "М"=>"\xCC", "Н"=>"\xCD", "О"=>"\xCE", "П"=>"\xCF", "Р"=>"\xD0", "С"=>"\xD1", "Т"=>"\xD2", "У"=>"\xD3", "Ф"=>"\xD4", "Х"=>"\xD5", "Ц"=>"\xD6", "Ч"=>"\xD7", "Ш"=>"\xD8", "Щ"=>"\xD9", "Ъ"=>"\xDA", "Ы"=>"\xDB", "Ь"=>"\xDC", "Э"=>"\xDD", "Ю"=>"\xDE", "Я"=>"\xDF", "а"=>"\xE0", "б"=>"\xE1", "в"=>"\xE2", "г"=>"\xE3", "д"=>"\xE4", "е"=>"\xE5", "ё"=>"\xB8", "ж"=>"\xE6", "з"=>"\xE7", "и"=>"\xE8", "й"=>"\xE9", "к"=>"\xEA", "л"=>"\xEB", "м"=>"\xEC", "н"=>"\xED", "о"=>"\xEE", "п"=>"\xEF", "р"=>"\xF0", "с"=>"\xF1", "т"=>"\xF2", "у"=>"\xF3", "ф"=>"\xF4", "х"=>"\xF5", "ц"=>"\xF6", "ч"=>"\xF7", "ш"=>"\xF8", "щ"=>"\xF9", "ъ"=>"\xFA", "ы"=>"\xFB", "ь"=>"\xFC", "э"=>"\xFD", "ю"=>"\xFE", "я"=>"\xFF");
  
     $subject = strtr($subject, $utfwin);
     $mail = strtr($mail, $utfwin);
     $subject = convert_cyr_string($subject, 'w', 'k');
     $mail = convert_cyr_string($mail, 'w', 'k');
    
     $subject = '=?KOI8-R?B?'.base64_encode($subject).'?=';
  
     $headers  = "From: <".$emailadmina.">\n"; 
     $headers .= "X-sender: <".$emailadmina.">\n";
     $headers .= "Content-Type: text/plain; charset=koi8-r\n";   
     $headers .= "MIME-Version: 1.0\r\n";
     $headers .= "Content-Transfer-Encoding: 8bit\r\n";
     $headers .= "X-Mailer: PHP v.".phpversion();
     mail($email, $subject, $mail, $headers);
	 
	 include '../../themes/'.$themes.'.php';
if ($portal=='off')
 {
  echo'<p align="center">'.$offmes.'</p>';
 }
if ($portal=='on')
 {
     echo'<p align="center"class="modul_name">Восстановление пароля<br /></p>';
     echo'<p class="b">';
     echo'Восстановление пароля прошло успешно. Новый пароль отправлен вам на e-mail<br />';
     echo'</p>';
}
     include '../../templates/foot.php';
   }
 }
####################
?>