Logout

efisio

Utente Attivo
5 Ago 2008
95
0
0
buongiorno a tutti,
qualcuno mi saprebbe dire come creare il logout da una pagina personale?

grazie

efisio
 

lotus

Utente Attivo
5 Mag 2009
543
8
0
Ciao immagino che l'autenticazione sia gestita tramite le sessione.
In qual caso puoi gestire il logout tramite
session_destroy.
Se fai altre interazioni, ovviamente, poi devi prevedere eventuale cancellazioni di dati o altro.
Ciao, Ciro
 

efisio

Utente Attivo
5 Ago 2008
95
0
0
Ciao Lotus,

non riesco a capire bene come inserire le SESSIONI nella fase di autenticazione.
Grazie
Efisio
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
un sistema semplicissimo può essere questo

Poi per il logout:
PHP:
<?php
session_start();
$_SESSION = array();
session_destroy();
?>
 

efisio

Utente Attivo
5 Ago 2008
95
0
0
Grazie Eliox per le indicazioni.
Mi metto a lavoro nella speranza di riuscire a risolvere questo problema.
 

efisio

Utente Attivo
5 Ago 2008
95
0
0
Scusa Eliox, ho seguito quanto mi hai detto mi sà che non riesco a metterlo in pratica.
Mi spiego meglio.
Ho seguito l'articolo che mi hai consigliato e fin qui tutto bene, ma quando ho realizzato il file di logout non riesco a chiudere la sessione e cancellare i dati nelle sessioni.

ciao
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Scusa, ma perché dopo session_start() definisci $_SESSION come array? Non è proprio il compito di quella funzione, oltre ad inviare gli header necessari? E poi io al posto di session_destroy(), che distrugge completamente la sessione, ho sempre usato unset($_SESSION['nome']), che distrugge solo il namespace di sessione interessato.
 

efisio

Utente Attivo
5 Ago 2008
95
0
0
Buongiorno,

il file di logout lo richiamo nel seguente modo:
<a href="logout.php">logout</a>
posizionato fuori dal codice php <? .... ?> del file pagina_riservata.php

Ciao

Efisio
 

efisio

Utente Attivo
5 Ago 2008
95
0
0
Ciao Eliox,
quando clicco su logout non mi dà nessun errore e visualizzo una pagina bianca. Inoltre se clicco sul pulsante del browser che mi porta alla pagina vista precedentemente rivedo i dati delle sessioni a video della pagina_riservata.php.

Mi piacerebbe che una volta cliccato su logout e successivamente cliccando su "indietro" nel browser, visualizzassi la pagina di login o index.
 

efisio

Utente Attivo
5 Ago 2008
95
0
0
Buongiorno Eliox, sapresti indicarmi come inserire il file di logout, nell'esempio di login che ho scaricato dal tuo sito?
Io stò provando aggiungendo il link, nella pagina_protetta.php, al file logout ma non mi sembra di ottenere niente di sperato.

Grazie

Efisio
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Efisio non duplicare le richieste :incazz:

La pagina bianca va bene perché lo script per il logout non produce output, al limite metti una redirezione alla fine:

PHP:
session_start();
$_SESSION = array();
session_destroy();
header('Location: pagina_protetta.php');

Non ti preoccupare se utilizzando il tasto indietro rivedi la sessione, in realtà questa non esiste più, è solo la cache del browser che persiste.
 

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
Ciao

Ciao,

Avrei bisogno di una mano. Ho il seguente codice di logout e funziona, perchè l'ho provato duemila volte. Però, ora l'ho adattato al mio programma. Quando ti logghi visualizza ciao pinco pallino e il tasto esci. Ma nel momento in cui clicchi sul tasto esci. Il "ciao pinco pallino" rimane, e compare la seguente frease che ho messo io ovviamente: echo "<center> <h1> Addio !!!! Alla prossima </center> </h1>"; Io vorrei fare in modo che quando clicco con il pulsantino su "esci", "ciao pincopallino", scompaio e rimane solo quella frase centrata. Mi puoi aiutare per farvore ??? Ti posto il codice di logout. Questo file si chiama benvenuto.php e private riguarda a proteggere la pagina.

PHP:
<?php
session_start();
require_once("connetti.php");
require_once("private.php");

if(!isset($_POST['out'])){


?>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>

         <form action= '' method="POST">

    
    </head>
     <input type="submit" name="out" value="Esci" />

    <body>
 <?php

<?php


}else{
    session_start();
    $_SESSION = array();
session_destroy();
$msg = "Addio !!!! Alla prossima";
echo "<center> <h1> Addio !!!! Alla prossima </center> </h1>";

echo "<meta http-equiv='Refresh' content='3; URL=login.php>";
//header("location: accesso.php?msg=$msg");
}

?>


Se ti serve altro codice basta chiedermelo. Grazie e aspettoo un tuo aiuto.
 

Discussioni simili