Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542

    problema a chiudere una sessione

    Ciao a tutti,
    ho letto la pillola sulle sessioni ma nonostante tutto non riesco a chiuderla.
    Ho provato in tanti modi.

    fra cui:
    session_start();
    $_SESSION = array();
    session_destroy();


    se rientro nella pagina dopo aver eseguito lo script di sopra e faccio echo di qualche variabile di sessione me la ritrovo ancora in vita.

    dove sbaglio?


    Grazie
    Guidino

  2. #2

    Re: problema a chiudere una sessione

    Originariamente inviato da guidino
    Ciao a tutti,
    ho letto la pillola sulle sessioni ma nonostante tutto non riesco a chiuderla.
    Ho provato in tanti modi.

    fra cui:
    session_start();
    $_SESSION = array();
    session_destroy();


    se rientro nella pagina dopo aver eseguito lo script di sopra e faccio echo di qualche variabile di sessione me la ritrovo ancora in vita.

    dove sbaglio?


    Grazie
    dove sbagli... e chi puo' indovinarlo?

    puo' essere che rilegge dalla cache del browser. Se chiudi il browser dovrebbe sparire tutto, se riprendi la stessa pagina senza chiudere il browser ti dara' lo stesso session_id() ma l'array di sessione sara' vuoto. $_SESSION = array() macina tutto.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012

    Re: problema a chiudere una sessione

    Originariamente inviato da guidino
    Ciao a tutti,
    ho letto la pillola sulle sessioni ma nonostante tutto non riesco a chiuderla.
    Ho provato in tanti modi.

    fra cui:
    session_start();
    $_SESSION = array();
    session_destroy();


    se rientro nella pagina dopo aver eseguito lo script di sopra e faccio echo di qualche variabile di sessione me la ritrovo ancora in vita.

    dove sbaglio?


    Grazie
    ma dove metti le variabili in sessione qui??

    $_SESSION = array();

    di questa non c'è bisogno... $_SESSION è già un variabile dichiarata con l' apertura della sessione, quindi assume lo stato che gli serve nel momento in cui inserisci un dato.

    es. :
    Codice PHP:
    session_start() // apro la sessione e php mi crea/recupera la variabile $_SESSION
    $_SESSION='pippo'  // se digito echo $_SESSION mi stampa pippo
    $_SESSION['name']='pluto' // $_SESSION NON è piu una variabile ma un array, quindi pippo non esiste ma $_SESSION è un array ora
    // quindi se adesso digito echo $_SESSION mi stampa Array

    session_destroy() // è come distruggere la variabile $_SESSION 
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  4. #4

    Re: Re: problema a chiudere una sessione

    Originariamente inviato da dottwatson
    ma dove metti le variabili in sessione qui??

    $_SESSION = array();

    di questa non c'è bisogno... $_SESSION è già un variabile dichiarata con l' apertura della sessione, quindi assume lo stato che gli serve nel momento in cui inserisci un dato.


    guarda che lui in quel modo le variabili le cancella..... ^3

    esattamente come suggerito dal manuale....


    @edit...

    ecco qua: http://it2.php.net/manual/it/functio...on-destroy.php

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542

    chiusura sessione

    Grazie per avermi risposto,
    le variabili di sessione le tengo in un array, ogni pagina aggiunge la variabile che serve alle pagine successive del flusso.
    Per esempio in una pagina faccio:

    sessione_start;
    $_SESSION['nomevar']=valore;

    Nell'ultima pagina del flusso, quando l'utente ha fatto tutto, vorrei chiudere la sessione.

    non uso cookies e la versione di php è la PHP Version 5.2.3.

    in phpinfo() nella sezione SESSION leggo:
    Session Support enabled
    Registered save handlers files user
    Registered serializer handlers php php_binary wddx

    Qualche idea?

    Grazie
    Guidino

  6. #6
    va benissimo come hai indicato nel primo post.

    Codice PHP:
    <?php
    session_start
    ();
    $_SESSION = array();
    session_destroy();
    header("location: pagina.php");
    exit;
    ?>

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542

    Chiusura sessione

    Grazie Piero,
    mi rincuora il tuo incoraggiamento però non riesco a chiudere la sessione.

    Hai qualche idea?

    Grazie
    Guidino

  8. #8

    Re: Chiusura sessione

    Originariamente inviato da guidino
    Grazie Piero,
    mi rincuora il tuo incoraggiamento però non riesco a chiudere la sessione.

    Hai qualche idea?

    Grazie
    no. Perche' non capisco cosa vuoi dire. Che significa?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    542

    Chiusura sessione

    In realtà le variabili di sessione venivano azzerate.
    ho controllato con lo script

    session_start();
    $_SESSION = array();
    session_destroy();
    foreach($_SESSION as $k => $v) echo $v;

    e le varibili non risultano più.

    solo quando rientro in una pagina e faccio:

    session_start();
    echo session_id()

    vedo sempre lo stesso id della sessione, nonostante lo script, ed invece nella mia ignoranza mi aspettavo un id diverso.

    Forse per cambiare id va chiuso il browser e riaperto oppure ricrearne uno nuovo con session_regenerate_id();

    Farò così.

    Grazie mille.
    Guidino

  10. #10
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012

    Re: Re: Re: problema a chiudere una sessione

    Originariamente inviato da piero.mac


    guarda che lui in quel modo le variabili le cancella..... ^3

    esattamente come suggerito dal manuale....


    @edit...

    ecco qua: http://it2.php.net/manual/it/functio...on-destroy.php
    mi era sfuggito che voleva cancellarle prima
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.