function zamger_login($username, $password) { // Globalne promjenljive potrebne za json_login funkciju... global $conf_json_user, $conf_json_pass, $session_id; $old_login = $_COOKIE['old_login']; //if (!empty($old_login) && $old_login != $username && $_SERVER['REMOTE_ADDR'] != "80.65.65.76") return "Pogrešni pristupni podaci"; $conf_json_user = $username; $conf_json_pass = $password; if ($username == "test" && $password == "test") { return ""; } $result = json_login(); // if ($username == "emujanovic2" && $password == "test") { $result=0; } if ($result == -5) { return "Pogrešni pristupni podaci."; } $session_id = $result['sid']; $zamger_userid = $result['userid']; //session_regenerate_id(); // prevent session fixation setcookie('old_login', $username); $_SESSION['login'] = $username; $_SESSION['password'] = $password; $_SESSION['server_session'] = $session_id; $_SESSION['userid'] = $zamger_userid; $_SESSION['user_type'] = "zamger"; session_write_close(); return ""; }
} $repeat = true; $repeats = 0; while ($repeat) { $result = json_request_retry("https://zamger.etf.unsa.ba/ajah/zadaca.php", $parameters); if (!array_key_exists("success", $result)) { die("JSON query dajZadacu failed: unknown reason\n"); } else { if ($result["success"] !== "true") { if ($result['code'] !== "ERR001") { die("GRESKA: " . $result['message']); } // Ponovni login $conf_json_user = $_COOKIE['zamger_login']; $conf_json_pass = $_COOKIE['zamger_pass']; $result = json_login(); if ($result == -5) { // Reći ćemo da je istekla sesija pa nek se opet logira die("GRESKA: Istekla sesija (x)"); } $session_id = $result['sid']; $cookie_expire_time = time() + 60 * 60 * 12; setcookie("zamger_session", $session_id, $cookie_expire_time); $_SESSION['server_session'] = $session_id; } else { $repeat = false; } } $repeats++; if ($repeats > 10) { die("GRESKA: Istekla sesija (y)");