nel senso che pur avendo postato poche ore fa il post era finito in terza paginaOriginariamente inviato da luca200
eh?![]()
![]()
nel senso che pur avendo postato poche ore fa il post era finito in terza paginaOriginariamente inviato da luca200
eh?![]()
![]()
Con
non desetti il cookie di sessione.Codice PHP:session_start();
session_unset();
session_destroy();
Pulisci semplicemente la sessione e i dati contenuti in essa.
Ma nella pagina successiva la sessione sarà richiamata nuovamente anche se priva dei contenuti che aveva prima.
La soluzione migliore per te è distruggere il cookie di sessione sul browser dell'utente (cioè impostare date già passate, quindi farlo scadere) oppure affidargli una nuova sessione "pulita" con session_id.
Ti consiglio comunque di provare la pulizia della sessione anche con unset($_SESSION) soprattutto se stai usando PHP-5.
Le funzioni citate in precedenza sono vecchie e ricordo di aver letto che è preferibile usare unset con le nuove versioni di php.
Potrebbe anche essere utile per te forzare la chiusura della sessione e la scrittura dei dati con session_write_close dopo aver effettuato la "pulizia" in modo da essere certo che le modifiche vengano salvate e riprese così come sono alla prossima richiesta.
![]()
Lungo le due rive del fiume gelato si stendeva la cupa e tetra foresta di abeti, dai quali il vento aveva appena spazzato il manto di brina. Nella luce crepuscolare quegli abeti neri e sinistri sembravano inclinarsi l'uno verso l'altro. Un silenzio minaccioso incombeva sul paesaggio, privo di qualsiasi segno di vita o di movimento, e desolato e freddo al punto da non poter ispirare che un solo sentimento: quello della più triste malinconia. E nello stesso tempo pareva che da quel paesaggio trapelasse una specie di riso, un riso ben più spaventoso di qualsiasi malinconia o tristezza, un riso tragico, come quello di una sfinge, un riso agghiacciante più della brina e che rammendava l'incombere minaccioso dell'ineluttabile. Era la saggezza potente e impenetrabile dell'eternità che irrideva alla vita, alla sua futilità e agli sforzi degli uomini.
Grazie mille Provo a fare queste modifiche e vediamo se funge![]()
saludos,Kosee
Originariamente inviato da luca200
Il tuo problema dovrebbe essere dovuto alla cache del browser.
Se dopo avere premuto il tasto Indietro provi a fare un refresh, le informazioni dovrebbero sparire. Questo ti conferma che la sessione non è più attiva.
invece no anche facendo refresh le informazioni rimangono salvate...Originariamente inviato da luca200
ma sulla pagina controlli l'autenticazione?Originariamente inviato da EtHeReAl
invece no anche facendo refresh le informazioni rimangono salvate...
se sì, significa che non hai svuotato la sessione
purtroppo non funziona neanche dopo aver provato entrambe le cose....Originariamente inviato da IroN@xiD
Con
non desetti il cookie di sessione.Codice PHP:session_start();
session_unset();
session_destroy();
Pulisci semplicemente la sessione e i dati contenuti in essa.
Ma nella pagina successiva la sessione sarà richiamata nuovamente anche se priva dei contenuti che aveva prima.
La soluzione migliore per te è distruggere il cookie di sessione sul browser dell'utente (cioè impostare date già passate, quindi farlo scadere) oppure affidargli una nuova sessione "pulita" con session_id.
Ti consiglio comunque di provare la pulizia della sessione anche con unset($_SESSION) soprattutto se stai usando PHP-5.
Le funzioni citate in precedenza sono vecchie e ricordo di aver letto che è preferibile usare unset con le nuove versioni di php.
Potrebbe anche essere utile per te forzare la chiusura della sessione e la scrittura dei dati con session_write_close dopo aver effettuato la "pulizia" in modo da essere certo che le modifiche vengano salvate e riprese così come sono alla prossima richiesta.
![]()
pur facendo sia unset($_SESSION) che session_write_close continua a essere disponibile tramite tasto "indietro"...
altre idee?![]()
Scusami, spiegami meglio.
Tu hai una pagina A ed una pagina B dove dovresti fare il logout.
Immagino che avrai un link che punta alla pagina di logout.
Tu clicchi sul link, vai alla pagina di logout e apparentemente è tutto ok.
Se però torni indietro con il pultante del browser ti ritrovi ancora la sessione impostata com'era prima?
Ma usi un redirect da header dopo aver modificato la sessione?
Ci posti il codice che usi?
Lungo le due rive del fiume gelato si stendeva la cupa e tetra foresta di abeti, dai quali il vento aveva appena spazzato il manto di brina. Nella luce crepuscolare quegli abeti neri e sinistri sembravano inclinarsi l'uno verso l'altro. Un silenzio minaccioso incombeva sul paesaggio, privo di qualsiasi segno di vita o di movimento, e desolato e freddo al punto da non poter ispirare che un solo sentimento: quello della più triste malinconia. E nello stesso tempo pareva che da quel paesaggio trapelasse una specie di riso, un riso ben più spaventoso di qualsiasi malinconia o tristezza, un riso tragico, come quello di una sfinge, un riso agghiacciante più della brina e che rammendava l'incombere minaccioso dell'ineluttabile. Era la saggezza potente e impenetrabile dell'eternità che irrideva alla vita, alla sua futilità e agli sforzi degli uomini.
doppio post scusate
pagina con sessione:
invece la pagina di logout funziona così:codice:<?php session_start(); if(isset($_REQUEST['inputName'])){ if (($_REQUEST['inputName']=="p")&&($_REQUEST['inputPass']=="r")){ $_SESSION['Name']=$_REQUEST['inputName'];} else $errore=" <div align=\"center\" class=\"errpiccolo\">User Name o Password immessi non corretti</div> ";} if(isset($_SESSION['Name'])){ // corpo della pagina } else{ print("<div class=\"errore\">ATTENZIONE NON SEI AUTENTICATO!</div> <div class=\"title\">Inserisci la username e la password per accedere all'area privata</div> "); print $errore; print(" <form action=\"{$_SERVER['PHP_SELF']}\" " . "method=\"post\" class=\"dati\">Nome utente:<input type=\"text\" name=\"inputName\" " ."value=\"\"> Password: <input type=\"password\" name=\"inputPass\" " ."value=\"\"> <input type=\"submit\" value=\"Entra\">\n" . "</form>"); }
un normale bottone di logout così:che rimanda a una pagina con il seguente codice:codice:<form action="logout.php" class="right"><input type="submit" value="Log Out"> </form>
codice:<?php session_start(); if(isset($_REQUEST['inputName'])){ if (($_REQUEST['inputName']=="p")&&($_REQUEST['inputPass']=="r")){ $_SESSION['Name']=$_REQUEST['inputName'];} else $errore=" <div align=\"center\" class=\"errpiccolo\">User Name o Password immessi non corretti</div> ";} ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <?php include ("it/logo.php"); include ("it/menu.php"); include ("it/vetrina.php"); include ("it/barrafine.php"); ?> <html> <head> <title>House & Money Network - Inserimento Appartamenti in Affitto</title> <link rel=stylesheet type="text/css" href="styles.css"> </head> <body bottommargin="0" leftmargin="0" marginheight="0" marginwidth="0" rightmargin="0" topmargin="0"> <?php if(isset($_SESSION['Name'])){ ?> <center> <?php logo(); ?> <?php menu(); ?> <tr> <td height="100%" valign="top"> <table border="0" width="100%" height="100%" cellpadding="0" cellspacing="0"> <tr class="background"> <td width="75%" height="100%" style="padding: 20px" valign="top"> <font class="title"> <?php session_destroy(); ?> <div class="errore">LOG OUT ESEGUITO CON SUCCESSO</div> Ritorna alla Home Privata <td height="100%" valign="top"> <table border="0" height="100%" cellpadding="0" cellspacing="0" bgcolor="#9C9C9C"> <tr> <td>[img]images/divider1.gif[/img]</td> </tr> <tr> <td height="100%"></td> </tr> <tr> <td>[img]images/divider2.gif[/img]</td> </tr> </table> </td> <td height="100%" style="padding: 20px" width="25%" valign="top"> <?php vetrina(); ?> </td> </tr> </table> </td> </tr> <?php barrafine(); ?> </table> </center> </body> </html> <?php } else{ ?> <center> <?php logo(); ?> <?php menu(); ?> <tr> <td height="100%" valign="top"> <table border="0" width="100%" height="100%" cellpadding="0" cellspacing="0"> <tr class="background"> <td width="75%" height="100%" style="padding: 20px" valign="top"> <div class="errore">La sessione non è attiva. Impossibile eseguire il log out.</div> Ritorna alla Home Privata </tr> </table> </td> </tr> <?php barrafine(); ?> </table> </center> </body> </html> <?php } ?>
grazie mille a chi avrà la pazienza di controllarsi tutto sto popò di codice![]()