File size: 4.78Kb
<?
/*
=============================================
Движок: SHCMS Engine
=============================================
Название файла: Восстановление пороля
=============================================
Official website: http://shcms.ru
=============================================
*/
define('SHCMS', true);
include_once'../system/inc/basic_settings.php';
$shcmsengine['title'] = 'Восстановление пороля';
include_once'../template/head.php';
$integ = $errors;
$flogged_pass = isset ($_GET['flogged_pass']) ? trim($_GET['flogged_pass']) : '';
switch ($flogged_pass):
case 'an':
$email = isset($_POST['email']) ? htmlspecialchars(trim($_POST['email'])) : '';
$integ = false;
if (!$email)
$integ = 'Чтобы восстановить пороль вы должны заполнить все поля.';
if (!$integ) {
$mysql_fetch = mysql_query("SELECT * FROM `users` WHERE `email` = '$email' LIMIT 1");
if (mysql_num_rows($mysql_fetch) == 1) {
$mysql_shcms = mysql_fetch_array($mysql_fetch);
if (empty($mysql_shcms['email']) || $mysql_shcms['email'] != $email)
$integ = 'Вы указали незарегистрированный E-mail <b>('.$email.')</b>';}
}
if (!$integ) {
$subject = 'Восстановление пароля';
$mail .= "Чтобы восстановить ваш пороль перейдите по ссылке: http://$_SERVER[HTTP_HOST]/shcms/flogged.php?flogged_pass=change&id=" . $mysql_shcms['id'] . "&code=" . session_id() . "\n\n";
$adds = "From: <" . $emailadmina . ">\r\n";
$adds .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
if (mail($mysql_shcms['email'], $subject, $mail, $adds)) {mysql_query("UPDATE `users` SET `flogged_n` = '" . session_id() . "', `flogged_t` = '$time_date' WHERE `id` = '" . $mysql_shcms['id'] . "'");
echo '<p>Все данные были отправлены на ваш E-mail <b>('.$email.')</b> зайдите на вашу почту и закончите процесс.</p>';}
else {echo '<p>Произошли сбои при отправки E-mail</p>';}}
else {echo '<center><b class="err_fl">Внимание, обнаружена ошибка!</b><hr/>' . $integ . '<br /></center>';}break;
case 'change':
$integ = false;
if (!$id)
$integ = 'Не найдено необходимые данные';
$mysql_fetch = mysql_query("SELECT * FROM `users` WHERE `id` = '$id' LIMIT 1");
if (mysql_num_rows($mysql_fetch) == 1) {$mysql_shcms = mysql_fetch_array($mysql_fetch);
if (empty($mysql_shcms['flogged_n']) || empty($mysql_shcms['flogged_t'])) {$integ = 'Вы не заполнили все поля и восстановление невозможно';}
if (!$integ && $mysql_shcms['flogged_t'] < $time_date - 3600) {$integ = 'Вы долгое время не закончили процесс восстановления. и вам теперь придется сначала восстановить пороль.';
mysql_query("UPDATE `users` SET `flogged_n` = '', `flogged_t` = '' WHERE `id` = '$id'");}}
if (!$integ) {$pass = $password_con;$subject = 'Восстановление прошла успешно.';
$mail .= "Смена вашего старого пороля прошла успешно Вот ваш новый пороль: ".$pass."\r\n";
$adds = "From: <" . $emailadmina . ">\n";
$adds .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
if (mail($mysql_shcms['mail'], $subject, $mail, $adds)) {mysql_query("UPDATE `users` SET `flogged_n` = '', `password` = '" . md5(md5($pass)) . "' WHERE `id` = '$id'");
echo 'Ваш пороль был успешно сменен на <b>'.$pass.'</b><br/><hr/>Для безопастности новый пороль вам был выслан на ваш E-mail';}
else {echo 'Произошли неожиданные сбои при отправки E-mail.';}}
else {echo '<center><b class="err_fl">Внимание, обнаружена ошибка!</b><hr/>' . $integ . '<br /></center>';}break;
default:
echo $novstyl_shcms['flogged'];
echo '<form action="flogged.php?flogged_pass=an" method="post">';
echo 'Ваш E-Mail:<br/><input type="text" name="email" /></p>';
echo '<p><input type="submit" value="Восстановить"/></p></form>';
echo '<small>* Пороль могут восстановить пользователи которые заполнили email в личных данных</small>';
break;
endswitch;
include_once'../template/foot.php';
?>