Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1

    [PHP] session_destroy()

    Ciao a tutti,
    ho utilizzato i metodi di PHP per la gestione delle sessioni, ma ho un problema con session_destroy()
    La creazione della sessione funziona, mi crea il file di riferimento della sessione e salva le variabili da me registrate, ma quando premo il pulsante per il logout, "dove è gestita la session_destroy()" mi pulisce le variabili ma non mi cancella il file, invece se chiudo la pag web non cancella nemmeno le variabili, ovvero il file rimane e mantiene lo stato delle variabili.

    richiamo solamente questi 2 metodi per il logout

    Codice PHP:
    session_start();
    session_destroy(); 
    Spero d'essere riuscito a spiegare il mio problema

    Ciao e grazie per l'aiuto
    Se la felicità è dietro l'angolo allora la mia vita è un cerchio. (Mario Muraro)

  2. #2
    :quote:

    Non ci sono consigli per me???
    Se la felicità è dietro l'angolo allora la mia vita è un cerchio. (Mario Muraro)

  3. #3
    Utente di HTML.it L'avatar di polinet
    Registrato dal
    Nov 2000
    Messaggi
    993
    prova cosi:
    Codice PHP:
    <?php
    session_start
    ();
    session_destroy;
    session_unset();
    ?>
    ¿Hasta la pasta?

  4. #4
    Niente non funziona, stessi problemi di prima.

    In altre parole non è cambiato nulla
    Se la felicità è dietro l'angolo allora la mia vita è un cerchio. (Mario Muraro)

  5. #5
    prova così:
    Codice PHP:
    <?php
    // Inizializza la sessione.
    // Se state usando session_name("qualcosa"), non dimenticatevelo adesso!
    session_start();
    // Desetta tutte le variabili di sessione.
    $_SESSION = array();
    // Infine distrugge la sessione.
    session_destroy();

    ?>
    da me funziona! ricorda solo se cambi il percorso del file di sessione di indicarlo prima del session_start
    Never care for what they say, Never care for games they play. Never care for what they do, Never care for what they know.
    «Solo due cose sono infinite: l’universo e la stupidità umana, e sul primo non sono sicuro». (A. Einstein)

  6. #6
    No, nemmeno così.

    Mi sono accorto che appena apro l'index del sito apre un file di sessione vuoto, poi effettuo il login e setta il valore delle variabili nel file.

    passando per il logout svuota le variabili, ma non cancella il file
    Chiudendo il browser non pulisce nemmeno la variabile globale $_SESSION

    mi viene il dubbio che forse devo settare qualcosa nel file php.ini?
    Se la felicità è dietro l'angolo allora la mia vita è un cerchio. (Mario Muraro)

  7. #7
    stai usando una sottocartella come percorso per i file di sessione??
    Se si devi indicare prima del session_start() la cartella che usi e poi procedere alla distruzione delle variabili e della sessione.
    altrimenti hai problemi nella configurazione del server.
    ps scordavo anche se hai cambiato l'id di sessione lo devi specificare prima di lavoraci su
    Never care for what they say, Never care for games they play. Never care for what they do, Never care for what they know.
    «Solo due cose sono infinite: l’universo e la stupidità umana, e sul primo non sono sicuro». (A. Einstein)

  8. #8
    Sto provando in locale, quindi punto alla cartella che sta sotto php

    C:\php\sessionfiles

    ed ho tolto il ; prima del session.save_path = "C:\php\sessionfiles" nel php.ini
    così da renderla attiva

    Ho sbagliato?
    Se la felicità è dietro l'angolo allora la mia vita è un cerchio. (Mario Muraro)

  9. #9
    prova così:
    1 crei una cartella tmp (con permesso di scrittura) nella cartella dove ci sono le pagine del sito protette con al session
    2in tutte le pagine che usano la sessione devi settare il percorso della sessione con:

    Codice PHP:
    session_save_path("./tmp/"); 
    prima di fare session_start();

    per esempio il codice di logout dovrà essere così:
    Codice PHP:
    <?php
    // Inizializza la sessione.
    // Se state usando session_name("qualcosa"), non dimenticatevelo adesso!
    session_save_path("./tmp/");
    session_start();
    // Desetta tutte le variabili di sessione.
    $_SESSION = array();
    // Infine distrugge la sessione.
    session_destroy();

    ?>
    e verifichi se funziona così
    Never care for what they say, Never care for games they play. Never care for what they do, Never care for what they know.
    «Solo due cose sono infinite: l’universo e la stupidità umana, e sul primo non sono sicuro». (A. Einstein)

  10. #10
    anche così non cambia nulla, mi crea la sessione e la uso nel sito, ma al momento del logout si comporta come prima, la cosa non mi stupisce considerando che ho solo cambiato directory per inserire il file della sessione, ma non riesco a capire per quale motivo non elimina il file alla fine delle operazioni?
    Se la felicità è dietro l'angolo allora la mia vita è un cerchio. (Mario Muraro)

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.