<?php require_once("connect.php"); require_once("functions.php"); if(!logon()) { } $userid = $_SESSION['id']; //i tu dalej odczyt właściwa strona itp. ?>
functions.php wygląda tak:
<?php function logon() { //czas sesji w sekundach $intTimeoutSeconds = 300; if(isset($_SESSION['intLastRefreshTime'])){if(($_SESSION['intLastRefreshTime']+$intTimeoutSeconds)<time()){session_destroy(); header('location: <a href=\"http://localhost/');}}\" target=\"_blank\">http://localhost/');}}</a> $sprawdzlogin = mysql_query("SELECT id, login, haslo FROM userdata WHERE haslo = '$haslo' AND login = '$login' LIMIT 1"); if($wyniksprawdz == 0) { $error=1; exit; } } $error=1; exit; } $login = $_SESSION['login']; $password = $_SESSION['password']; $ip = $_SESSION['ip']; if($_SERVER['REMOTE_ADDR'] != $ip) { exit; } if ($error==0) { $_SESSION['id']=$userid['id']; $_SESSION['logon'] = 1; $_SESSION['login'] = $_POST['user']; $_SESSION['password'] = $_POST['pass']; $_SESSION['ip'] = $_SERVER['REMOTE_ADDR']; } if($_SESSION['logon'] == "1") { return 1; } else { $error=1; exit; } } ?>
Jednak przy logowaniu skrypt wykonuje się bardzo długo, tak jakby się zapętlał... I zabardzo nie wiem dlaczego. W ogóle taki sposób na logowanie jest dobry?