continua a non funzionare...
anch'io immagino che fosse docuto al fatto che non eliminava il cookie, ma nonostante la modifica proposta continua a non fare il logout.
vi posto il sorgente modificato in fondo al post.
un esempio l'ho messo on line all'indirizzo www.pandamarostica.it/login
ciao a tutti e grazie per le vostre risposte..
aLe.bEr
codice:
<?
//dati per il login
$login_user = "admin";
$pass_user = "189bbbb00c5f1fb7fba9ad9285f193d1"; //MD5("prova")
$redirect = "http://www.pandamarostica.it/login/login.php";
//gestione della sessione nel caso in cui i cookie sono disabilitati
if (isset($_POST['PHPSESSID']) && !isset($_COOKIE['PHPSESSID'])) {
$PHPSESSID = $_POST['PHPSESSID'];
header("Location: $redirect?PHPSESSID=$PHPSESSID"); //si ricarica la pagina di login
}
session_start(); //si inizia o continua la sessione
//controllo user e passwd da login
if (isset($_POST['posted_username']) && isset($_POST['posted_password']))
if ($login_user == ($_POST['posted_username']) && $pass_user == md5($_POST['posted_password']))
$_SESSION['user'] = $_POST['posted_username'];
//logout
if (isset($_GET['logout'])) {
$_SESSION = array(); // desetta tutte le variabili di sessione
setcookie(PHPSESSID, $PHPSESSID, time() - 3600); // azzero il cookie sul browser
session_destroy(); //distrugge la sessione
header("Location: $redirect"); //si ricarica la pagina di login
exit; //si termina lo script in modo da ritornare alla schermata di login
}
?>
<HTML>
<HEAD>
</HEAD>
<BODY>
<?
$PHPSESSID = session_id();
if (!isset($_SESSION['user'])) { //non siamo loggati, pagina di login
if (isset($_POST['SUBMIT'])) //errore nome utente e/o password
print("Errore nome utente e/o password.
");
print("
<FORM METHOD=POST ACTION=\"login.php\">
username: <INPUT TYPE=TEXT SIZE=20 NAME=posted_username>
password: <INPUT TYPE=PASSWORD SIZE=20 NAME=posted_password>
<INPUT TYPE=SUBMIT NAME=SUBMIT VALUE=\"login\">
");
if (!isset($_COOKIE['PHPSESSID'])) //i cookie sono off, dobbiamo propagare noi il PHPSESSID
print("<INPUT TYPE=HIDDEN NAME=PHPSESSID VALUE=$PHPSESSID>");
print("</FORM>");
}
else //siamo loggati pagina riservata
{
$username = $_SESSION['user'];
print("Il tuo ID: $PHPSESSID
");
print("Sei loggato come: $login_user
");
print("<A HREF=\"login.php?logout=1\">logout</A>");
}
?>
</BODY>
</HTML>