-
Notifications
You must be signed in to change notification settings - Fork 0
/
login.php
84 lines (76 loc) · 3.16 KB
/
login.php
1
<?phpinclude_once ("./includes/core.php");if ($_POST) { $user = fetch_assoc(query(" SELECT u.* FROM `uzivatel_vw` AS u WHERE u.`login` = '{$_POST['login']}'" )); if ($user['blokace'] == "0") { if ($_POST['password']) { $pass = sha1($user['id'] . $_POST['password']); $uzivatel_ip = $_SERVER['REMOTE_ADDR']; if ($pass == $user['password']) { $_SESSION['user']['id'] = $user['id']; $_SESSION['user']['login'] = $user['login']; $_SESSION['user']['nick'] = $user['nick']; $_SESSION['user']['admin'] = $user['admin']; $_SESSION['user']['ip'] = $uzivatel_ip; query(" UPDATE `uzivatel` SET `ip`='{$uzivatel_ip}',`posledniPrihlaseni`=NOW(), `pokusuPrihlasit`='0', `pocetPrihlaseni`=`pocetPrihlaseni`+1, `session`='{$_SESSION['id']}' WHERE `id`='{$user['id']}'"); // //BOF-presmerovani if ($_GET['token']) { $token_url = fetch_assoc(query("SELECT `url` FROM `urlRequest` WHERE `token`='{$_GET['token']}'")); if ($token_url) { go($token_url['url']); } } $def = fetch_assoc(query(" SELECT m.`url` FROM `uzivatelOpravneni` AS uo LEFT JOIN `modul` AS m ON(m.`id` = uo.`vychoziModul`) WHERE uo.`id`='{$user['uzivatelOpravneni_id']}'")); if ($_GET['request']) { go($_GET['request']); } elseif ($def['url']) { go($setup['adm']['www'] . $def['url']); } else { go($setup['adm']['www'] . "prazdnaStranka.html"); } //EOF-presmerovani } else { $pokusu_prihlasit = $user['pokusuPrihlasit'] + 1; if ($pokusu_prihlasit >= 5) { $set = "`pokusuPrihlasit`='$pokusu_prihlasit', `blokace`='2', `duvodBlokace`='Překročený počet pokusů o přihlášení'"; } else { $set = "`pokusuPrihlasit`='$pokusu_prihlasit'"; } query("UPDATE `uzivatel` SET `ip`='$uzivatel_ip', $set WHERE `id`='{$user['id']}'"); $err = "Neplatné JMÉNO nebo HESLO!"; } } else { $err = "Neplatné JMÉNO nebo HESLO!"; } } elseif ($user['blokace'] == 2) { $err = "Překročený počet pokusů o přihlášení."; }else{ $err = "Neočekávaná chyba."; }}$smarty->assign("err", $err);// ======= odhlášení ========if ($_GET['odhlasit'] == '1') { query("UPDATE `uzivatel` SET `session`='' WHERE `id`='{$_SESSION['user']['id']}'"); $_SESSION = array(); if (isset($_COOKIE[session_name()])) { setcookie(session_name(), '', time() - 42000, '/'); } session_destroy(); session_regenerate_id(); go($setup['adm']['www']);}$smarty->display($setup['adm']['templates'] . "/login.tpl");?>