Размер файла: 5.44Kb
- <?
- /*
- =============================================
- Движок: SHCMS Engine
- =============================================
- Название файла: Смена пороля
- =============================================
- Official website: http://shcms.ru
- =============================================
- */
- define('SHCMS', true);
- include_once'../system/inc/basic_settings.php';
- $shcmsengine['title'] = 'Смена пороля';
- include_once'../template/head.php';
- registrat();
- function dpass_errors($err_pass = false, $link = '') {
- if ($err_pass) {$out = '';if (is_array($err_pass)) {foreach ($err_pass as $val)$out .= '<div>' . $val . '</div>';}
- else {$out .= '<br />' . $err_pass;}$out .= '</p><p>' . $link . '</p></div>';return $out;}
- else {return false;}}
- if (!$user_id) {
- dpass_errors('Только для зарегистрированных посетителей');
- include_once'../template/foot.php';
- exit;
- }if ($id && $id != $user_id) {
- $mysql_p = mysql_query("SELECT * FROM `users` WHERE `id` = '$id' LIMIT 1");
- if (mysql_num_rows($mysql_p)) {
- $user = mysql_fetch_assoc($mysql_p);}
- else {echo 'Пользователя несуществует';
- exit();}}else {$id = false;$user = $datauser;}
- echo '<hr/>';
- $te = mysql_fetch_array(mysql_query("SELECT * FROM pass_secure WHERE user_id='$user_id' ORDER BY id DESC"));
- if($te['user_id'] == $user_id)
- {echo 'Последний раз пороль был изменен ('.date('d.m.y',$te['time']) .' в '. date('H:s:i',$te['time']) .')';}
- else{echo 'Вы не меняли еще пороль.';}
- echo '<hr/>';
- switch ($secure_pass) {case 'ok_pass' :
- $err_pass = array();
- $pass_st = isset ($_POST['pass_st']) ? trim($_POST['pass_st']) : '';
- $password_new = isset ($_POST['password_new']) ? trim($_POST['password_new']) : '';$password_new2 = isset ($_POST['password_new2']) ? trim($_POST['password_new2']) : '';
- if ($sys_b >= 7) {if (!$password_new || !$password_new2){echo 'Обязательно заполните все поля';header('Refresh: 1; url=pass.php?' . $conservation . '&' );
- include_once'../template/foot.php';
- exit();}}
- else {if (!$pass_st || !$password_new || !$password_new2){echo 'Обязательно заполните все поля';header('Refresh: 1; url=pass.php?' . $conservation . '&' );
- include_once'../template/foot.php';
- exit();
- }}if (!$err_pass && md5(md5($pass_st)) !== $user['password']){echo 'Вы неправильно ввели старый пороль';header('Refresh: 1; url=pass.php?' . $conservation . '&' );exit();}
- if ($password_new != $password_new2){echo 'Новые пароли не совпадают';header('Refresh: 1; url=pass.php?' . $conservation . '&' );
- exit();}if (preg_match("/[^\da-zA-Z_]+/", $password_new) && !$err_pass){echo 'В новом пороле имеются недопустимые символы';header('Refresh: 1; url=pass.php?' . $conservation . '&' );
- include_once'../template/foot.php';
- exit();}
- if (!$err_pass && (strlen($password_new) < 2 or strlen($password_new) > 20))
- {echo 'Длина пароля должна быть не больше 20символов';header('Refresh: 1; url=pass.php?' . $conservation . '&' );
- include_once'../template/foot.php';
- exit();}
- if (!$err_pass) {
- mysql_query("UPDATE users SET password = '".mysql_real_escape_string(md5(md5($password_new)))."' WHERE id = '".$user['id']."'LIMIT 1");
- mysql_query("INSERT INTO pass_secure (time,user_id) VALUES('".time()."','$user_id')");
- if (isset ($_COOKIE['cuid']) && isset ($_COOKIE['cups']))
- setcookie('cups', md5($password_new), time() + 3600 * 24 * 365);
- echo '<div class="actshcms">Ваш старый пороль успешно изменен на новый ('.$password_new.') для безопастности он был выслан вам на e-mail '.$user['email'].' и на внутреннюю почту</div><br />';
- $adress = "$user[email]";
- $tex = 'Смена пороля';
- $contr = 'Вы успешно сменили пороль вашего логина('.$user['login'].') на сайте '.$_SERVER['HTTP_HOST'].'. Вот ваш новый пороль ('.$password_new.')';
- $conte = "From: <'secure@".$_SERVER['HTTP_HOST']."'>\r\n";
- $conte .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
- mail($adress,$tex,$contr,$conte);
- $text = 'Вы успешно сменили пороль вашего логина( '.$user['login'].' ) <br/>на сайте '.$_SERVER['HTTP_HOST'].'. <br/>Вот ваш новый пороль ('.$password_new.')<br /><hr/>Отправлено:' . date("d.m.y", $time_date) .' в ' . date("H.i.s", $time_date);
- mysql_query("INSERT INTO `mail` SET`user` = '$user[login]',`text` = '$text',`author` = 'Системный робот',`time` = '$time_date',`type` = 'in',`chit` = 'no'");
- header('Refresh: 1; url=pass.php?' . $conservation . '&' );}
- else {echo dpass_errors($err_pass);header('Refresh: 1; url=pass.php?' . $conservation . '&' );}break;default :
- echo '<form action="?secure_pass=ok_pass" method="post">';echo 'Старый пороль:<br /><input type="password" name="pass_st" /><br/>';
- echo 'Новый пороль:<br /><input type="password" name="password_new" /><br />';
- echo 'Подтверждение:<br /><input type="password" name="password_new2" /><br/>';
- echo '<input type="submit" name="submit" value="Сменить"/>';
- echo '</form>';
- }
- include_once'../template/foot.php';
- ?>