View file autoload/user.php

File size: 5.98Kb
<?php

if (isset($_GET['login']) && isset($_GET['password']))
{
    # Проверяем существование аккавунта с этими данными
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `login` = '". input($_GET['login']) ."' AND `password` = '". encrypt(input($_GET['password'])) ."' LIMIT 1"), 0) == 1)
    {
        # Массив с данными пользователя
        $user = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `login` = '". input($_GET['login']) ."' AND `password` = '". encrypt(input($_GET['password'])) ."' LIMIT 1"));

        # Создаем ID в сессии
        $_SESSION['user_id'] = $user['id'];

        # Записываем дату последнего посещения
        mysql_query("UPDATE `users` SET `date_last_entry` = '". time() ."' WHERE `id` = '$user[id]' LIMIT 1");

        // проверка наличия настроек
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_settings` WHERE `user_id` = '$user[id]'"), 0) == 0) mysql_query("INSERT INTO `user_settings` SET `user_id` = '$user[id]'");

        # Массив с настройками
        $settings = mysql_fetch_assoc(mysql_query("SELECT * FROM `user_settings` WHERE `user_id` = '$user[id]' LIMIT 1"));
    }
    else $err .= 'Неверный логин или пароль<br />';
}
else if (isset($_POST['login']) && isset($_POST['password']))
{
    # Проверяем существование пользователя с такими данными
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `login` = '". input($_POST['login']) ."' AND `password` = '". encrypt(input($_POST['password'])) ."' LIMIT 1"), 0) == 1)
    {
        # Создаем массив с пользовательскими данными
        $user = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `login` = '". input($_POST['login']) ."' AND `password` = '". encrypt(input($_POST['password'])) ."' LIMIT 1"));

        # Создаем ID в сессии
        $_SESSION['user_id'] = $user['id'];

        # Записываем дату последнего посещения
        mysql_query("UPDATE `users` SET `date_last_entry` = '". time() ."' WHERE `id` = '$user[id]' LIMIT 1");

        // проверка наличия настроек
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_settings` WHERE `user_id` = '$user[id]'"), 0) == 0) mysql_query("INSERT INTO `user_settings` SET `user_id` = '$user[id]'");

        # Массив с настройками
        $settings = mysql_fetch_assoc(mysql_query("SELECT * FROM `user_settings` WHERE `user_id` = '$user[id]' LIMIT 1"));

        # Если передан параметр то записываем данные в куки
        if (isset($_POST['save_entry']))
        {
            setcookie('user_id', $user['id'], time() + 60 * 60 * 24 * 365);
            setcookie('password', encrypt(input($_POST['password'])), time() + 60 * 60 * 24 * 365);
        }
    }
    else $err .= 'Неверный логин или пароль<br />';
}
else if (isset($_SESSION['user_id']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '". num($_SESSION['user_id']) ."' LIMIT 1"), 0) == 1)
{
    # Создаем массив с данными пользователя
    $user = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '". num($_SESSION['user_id']) ."' LIMIT 1"));

    # Записываем дату последнего посещения
    mysql_query("UPDATE `users` SET `date_last_entry` = '". time() ."' WHERE `id` = '$user[id]' LIMIT 1");

    // проверка наличия настроек
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_settings` WHERE `user_id` = '$user[id]'"), 0) == 0) mysql_query("INSERT INTO `user_settings` SET `user_id` = '$user[id]'");

    # Массив с настройками
    $settings = mysql_fetch_assoc(mysql_query("SELECT * FROM `user_settings` WHERE `user_id` = '$user[id]' LIMIT 1"));
}
else if (isset($_COOKIE['user_id']) && isset($_COOKIE['password']) && $_COOKIE['user_id'] != NULL && $_COOKIE['password'] != NULL)
{
    # Проверяем наличие пользователя с указанными данными
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '". num($_COOKIE['user_id']) ."' AND `password` = '$_COOKIE[password]' LIMIT 1"), 0) == 1)
    {
        # Создаем массив с данными пользователя
        $user = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '". $_COOKIE['user_id'] ."' LIMIT 1"));

        # Создаем ID в сессии
        $_SESSION['user_id'] = $user['id'];

        # Записываем дату последнего посещения
        mysql_query("UPDATE `users` SET `date_last_entry` = '". time() ."' WHERE `id` = '$user[id]' LIMIT 1");

        // проверка наличия настроек
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_settings` WHERE `user_id` = '$user[id]'"), 0) == 0) mysql_query("INSERT INTO `user_settings` SET `user_id` = '$user[id]'");

		# Массив с настройками
        $settings = mysql_fetch_assoc(mysql_query("SELECT * FROM `user_settings` WHERE `user_id` = '$user[id]' LIMIT 1"));
    }
    else
    {
        setcookie('user_id');
        setcookie('password');
    }
}

if (!isset($user) && !empty($system['browser']) && !empty($system['ip'])) {
	if (mysql_result(mysql_query("SELECT COUNT(*) FROM `guests` WHERE `ip` = '$system[ip]' AND `ua` = '$system[browser]' LIMIT 1"), 0) == 1) {
		mysql_query("UPDATE `guests` SET `date_last` = '". time() ."' WHERE `ip` = '$system[ip]' AND `ua` = '$system[browser]' LIMIT 1");
	}
	else {
		mysql_query("INSERT INTO `guests` SET `ip` = '$system[ip]', `ua` = '$system[browser]', `date_last` = '". time() ."'");
	}
}

?>