Witam, mam tu prościutki skrypt logowania na sesjach i cookie:
<?php
function logins(){
if(isset($_POST['password']) && isset($_POST['user'])) { } else if(isset($_SESSION['user_login']) && isset($_SESSION['user_pass'])) { $user = $_SESSION['user_login'];
$password = $_SESSION['user_pass'];
} else if(isset($_COOKIE['login'])) { $r = explode("::", $_COOKIE['login']); $user = $r[1];
$password = $r[0];
} else {
return false;
}
$query = "SELECT * FROM users WHERE password = '$password' AND user='$user'";
echo 'Niepoprawne Login lub Hasło'; return false;
}else{
$err = 'Zalogowany';
$_SESSION['user_login'] = $user;
$_SESSION['user_pass'] = $password;
return true;
}
}
if(logins()){
echo "<a href='?logout=yes'>wyloguj</a>"; } else {
echo '<form method="POST" action=""> <div>Podaj hasło</div>
<div><input type="text" name="user" /></div>
<div><input type="password" name="password" /></div>
<div><input type="checkbox" name="zapamietaj" /> - Zapamiętaj hasło</div>
<div><input type="submit" name="login" value="Zaloguj"/></div>
</form>';
}
if(isset($_GET['logout']) && $_GET['logout']=="yes") { header('location: '.$_SERVER['PHP_SELF'].''); }
?>
Pytanie, czy warto wszystkie dane zapisać w sesji czy podtrzymywać logowania a dane wyciągać przez mysql_fetch_row a następnie je wyświetlać. Ogólnie skrypt to błazenada, ale na szybkiego jest. Nie wiem co tu jeszcze zmienić, oczywiście filtrowanie danych plus dodatkowe zabezpieczenia.