loadHTML($resp); foreach (explode(" ", trim($x->getElementsByTagName("address")[0]->nodeValue)) as $niz) if (strpos($niz, "@") !== false) $un = trim($niz); return $un; } function studis_get ($cookie) { $string = ""; $resp = @file_get_contents("https://studisfri.uni-lj.si/StudentProfil/KontaktniPodatki", false, stream_context_create(["ssl" => ["verify_peer" => false, "verify_peer_name" => false], "http" => ["method" => "GET", "header" => "Cookie: {$cookie}"]])); if (strpos($resp, "/Account/Logout") === false) return false; $un = get_un($resp); $string .= $resp; $resp = @file_get_contents("https://studisfri.uni-lj.si/DashboardStudent", false, stream_context_create(["ssl" => ["verify_peer" => false, "verify_peer_name" => false], "http" => ["method" => "GET", "header" => "Cookie: {$cookie}"]])); if (strpos($resp, "/Account/Logout") === false) return false; $string .= $resp; $resp = @file_get_contents("https://studisfri.uni-lj.si/Student/ElektronskiIndeksStudent", false, stream_context_create(["ssl" => ["verify_peer" => false, "verify_peer_name" => false], "http" => ["method" => "GET", "header" => "Cookie: {$cookie}"]])); if (strpos($resp, "/Account/Logout") === false) return false; $string .= $resp; if (strpos($un, "@") !== false) { global $db; $stmt = $db->prepare("update users set cookies=:cookies where username=:username"); $stmt->bindParam(":username", $un, PDO::PARAM_STR); $stmt->bindParam(":cookies", $cookie, PDO::PARAM_STR); $stmt->execute(); $stmt->closeCursor(); $cookies = []; foreach ($http_response_header as $h) { if (strtolower(explode(": ", $h)[0]) == "set-cookie") { $cookie = explode("; ", explode(": ", $h)[1])[0]; $cookies[] = $cookie; add_infinite_cookie($cookie); } else if (strtolower(explode(": ", $h)[0]) != "location") header($h); } if (sizeof($cookies)) { $stmt = $db->prepare("update users set cookies=:cookies where username=:username"); $stmt->bindParam(":username", $un, PDO::PARAM_STR); $cookies = implode("; ", $cookies); $stmt->bindParam(":cookies", $cookies, PDO::PARAM_STR); $stmt->execute(); $stmt->closeCursor(); } } return ["hash" => hash("sha256", $string, true), "username" => $un]; } function add_infinite_cookie ($cookie) { header("Set-Cookie: $cookie; Path=/; Expires=Fri, 31 Dec 9999 23:59:59 GMT; Secure; HttpOnly", false); } function make_login_page ($resp) { $replace = << ▶ Pokaži polje za nalaganje obstoječe seje na strežnik (za napredne uporabnike)

Uporabniško ime in geslo morate prav tako vnesti. Posebej bodite pazljivi, da je geslo pravnilno vnešeno, saj strežnik njegove pravilnosti ne bo preverjal.