Witam szanownych forumowiczów
Chciałem napisać prosty skrypt logowania i wylogowania. Niby wszystko działa, ale po wylogowaniu i usunieciu zmiennych sesyjnych jak kliknę na przeglądarce "wstecz" to i tak wszystkie chronione dane są wyświetlane, a odświeżenie strony powoduje ponowne rozpoczęcie sesji. Doszedłem do wniosku, że przeglądarka pamięta wartości zmiennych: nazwy użytkownika i hasła.
1. Jak poprawić mój kod, żeby po kliknięciu na wstecz i odświeżeniu wczystywał się forumarz, a nie chronione dane?
2. Jak sprawić aby wogóle nie było możliwe oglądanie chronionych danych przez "wstecz" po wylogowaniu?
Gdybym mógł chociaz jakieś wskazówki dostać...
Kod:
<?php
echo '<?xml version="1.0" encoding="iso-8859-2"?>'; ?>
<head>
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
<style type="text/css">
/*<![CDATA[*/
#name{color:darkred; font-size:10pt; margin-bottom:4cm}
#wrongpass{font-size:15; text-align:center; color:red; font-weight:bold; margin-top:2cm;}
#who{font-size:10pt; font-variant:small-caps;}
#form{width:400px; margin:auto; margin-top: 4cm;}
/*]]>*/
</style>
<title> funfair</title>
</head>
<body>
<?php
if(isset($_POST['submitted'])){
if((($_POST['user'])==='user1') && (($_POST['pass'])==='haslo1')){
//utwórz sesję logowania
$_SESSION['auth']=1;
}
else{
echo "Wprowadziłeś nieprawidłowe dane..."; }
}//koniec submitted
//na logout.php dochodzi do zniszczenia zmiennych sesyjnych
echo "<div id='name'>Welcome to faunfair";if
(($_SESSION['auth']) == 1
){ echo "<div style=\"color:#dd4902\">Jesteś zalogowany jako {$_POST['user']} <a href=\"logout2.php\"> Wyloguj</a></div>";}
if($_SESSION['auth'] == 1){
echo "tajna informacja: you are an alien"; }
else{
<form id="form" method="POST">
<fieldset>
<p>login: <input type="text" name="user" size="20" maxlength="25" /></p>
<p>password: <input type="password" name="pass" size="20" maxlength="25" /></p>
<input type="hidden" name="submitted" />
<input type="submit" value="send" />
</fieldset>
</form>
FORM;
}
?>
</body>
</html>
Ten post edytował Jozjasz 7.10.2011, 14:06:12