Файл: mob-lave.ru/auth.php
Строк: 64
<?php
require_once 'core/set.php';
$set['title'] = 'Авторизация';
require_once 'core/head.php';
unreg();
require_once 'core/panel.php';
if(isset($_GET['lg']) && isset($_GET['ps'])){ // Автологин
$login = check($_GET['lg']);
$pass = md5(md5(check($_GET['ps'])));
if(!preg_match("#^([A-z0-9-_ ])+$#ui", $login))$err = 'В нике присутствуют запрещенные символы. Разрешено использовать латинские буквы, цифры, тере и знаки подчеркивания';
if(!preg_match("#^([A-z0-9-_ ])+$#ui", $pass))$err = 'В пароле присутствуют запрещенные символы. Разрешено использовать латинские буквы, цифры, тере и знаки подчеркивания';
$query = mysql_query("SELECT `login` FROM `$system[perfix]_users` WHERE `login` = '$login' and `pass` = '$pass' LIMIT 1");
// ------ Запись ip ------ //
$id_user = mysql_fetch_assoc($query);
mysql_query("INSERT INTO `$system[perfix]_ip` SET `id_user` = '$id_user[id]', `ip` = '".check($_SERVER['REMOTE_ADDR'])."', `user_agent` = '".check($_SERVER['HTTP_USER_AGENT'])."', `time` = '".time()."'");
mysql_query("UPDATE `$system[perfix]_users` SET `close_ip` = '0' WHERE `id` = '$id_user[id]'");
if (mysql_num_rows($query)) {
$creat = mysql_fetch_assoc(mysql_query("SELECT `id`,`login`,`pass` FROM `$system[perfix]_users` WHERE `login` = '$login' and `pass` = '$pass' LIMIT 1"));
$log = $creat['login'];
$pas = $creat['pass'];
# Ставим куки (86400 = day)
setcookie('userlogin', $log, time()+86400*365, '/');
setcookie('userpass', $pas, time()+86400*365, '/');
# Переадресовываем браузер на главную страницу
header('location: index.php');
} else {
# Переадресовываем браузер на страницу авторизации, если не верно
header('location: auth.php');
}
}
if(isset($_POST['submit'])){ // Запись юзера
if (empty($_GET['lg']) and empty($_GET['ps'])) {
$login = check($_POST['login']);
$pass = md5(md5(check($_POST['pass'])));
} else {
$login = check($_GET['lg']);
$pass = md5(md5(check($_GET['ps'])));
}
if(!preg_match("#^([A-z0-9-_ ])+$#ui", $login))$err = 'В нике присутствуют запрещенные символы. Разрешено использовать латинские буквы, цифры, тере и знаки подчеркивания';
if(!preg_match("#^([A-z0-9-_ ])+$#ui", $pass))$err = 'В пароле присутствуют запрещенные символы. Разрешено использовать латинские буквы, цифры, тере и знаки подчеркивания';
if(mysql_result(mysql_query("SELECT COUNT(`id`) FROM `$system[perfix]_users` WHERE `login` = '$login'"),0) == 0) $err = 'Пользователя с таким логином не существует';
if(mysql_result(mysql_query("SELECT COUNT(`id`) FROM `$system[perfix]_users` WHERE `login` = '$login' && `pass` != '$pass'"),0) == 1) $err = 'Пароль введен не верно';
if ($_SESSION['code'] != $_POST['kod']) {
}
err();
if(!isset($err)){
$query = mysql_query("SELECT `id`,`login`,`pass` FROM `$system[perfix]_users` WHERE `login` = '$login' and `pass` = '$pass' LIMIT 1");
// ------ Запись ip ------ //
$id_user = mysql_fetch_assoc($query);
mysql_query("INSERT INTO `$system[perfix]_ip` SET `id_user` = '$id_user[id]', `ip` = '".check($_SERVER['REMOTE_ADDR'])."', `user_agent` = '".check($_SERVER['HTTP_USER_AGENT'])."', `time` = '".time()."'");
mysql_query("UPDATE `$system[perfix]_users` SET `close_ip` = '0' WHERE `id` = '$id_user[id]'");
if (mysql_num_rows($query)) {
$creat = mysql_fetch_assoc(mysql_query("SELECT `id`,`login`,`pass` FROM `$system[perfix]_users` WHERE `login` = '$login' and `pass` = '$pass' LIMIT 1"));
$log = $creat['login'];
$pas = $creat['pass'];
# Ставим куки (86400 = day)
setcookie('userlogin', $log, time()+86400*365, '/');
setcookie('userpass', $pas, time()+86400*365, '/');
# Переадресовываем браузер на главную страницу
header('location: index.php');
} else {
# Переадресовываем браузер на страницу авторизации, если не верно
header('location: auth.php');
}
}
}
echo '
<form method="post">
Логин: <br /><input type="text" name="login" maxlength="20" size="13" /><br />
Пароль: *<br /> <input type="password" name="pass" maxlength="20" size="13" /><br />
</br><br/>
<input type="submit" name="submit" value="Войти"/><br/>
</form>';
echo '<div class="mess"><font color=red>*</font> Если вы забыли пароль, можете воспользоваться услугой <a href="pass.php">восстановления пароля</a>.<br/>
<font color=red>**</font> Сделано для безопасности ваших аккаунтов. Ни кому не давайте пароль от аккаунта, даже если это ваш друг. Используйте сложный пароль. Вы думаете, что пароль типа 111222 трудно подобрать? Ну ну...</div>';
echo '<div class="mess">Автологин:<br /><input type="text" name="autologin" value="http://'.$set['site'].'/auth.php?lg=Логин&ps=Пароль" /></div>';
require_once 'core/foot.php';
?>