Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Sessioni PHP e schede browser

    Salve a tutti, sono consapevole che probabilmente se esiste una soluzione, essa ha a che fare anche con javascript, però ero indeciso su quale forum chiedere.

    Ma veniamo al dunque, la situazione è questa:

    Ho un sito in cui dopo essersi loggati sul sistema, con PHP, creo delle variabili di sessione.
    Ora, se apro simultaneamente una seconda scheda o tab del browser, ovviamente la sessione è sempre presente e non c'è la necessità di rieffettuare l'accesso al sistema.

    La mia domanda è: è possibile, chiudendo la seconda scheda del browser, distruggere la sessione anche nella prima scheda?
    Una sorta di logout generale legato all'evento della chiusura della scheda...

    Ho provato con l'evento onbeforeunload ma niente.

    Se mi sono espresso male chiedo scusa, sono stanchissimo!!!

  2. #2
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Non capisco perche' ti volgia fare 1 cosa del genere ... cmq mi sa che devi gestire l'evento da pagina client ( cosa assolutamente insicura e da evitare a mio avviso) cmq se devi farlo devi controllare bene gli eventi della pagina



    http://www.javascriptkit.com/jsref/window.shtml

    OPPURE per andare piu' sicuro

    http://api.jquery.com/category/events/document-loading/

  3. #3
    intanto grazie per la risposta...a dire il vero io non vorrei fare una cosa del genere ma il proprietario del sito insiste nonostante la calda raccomandazione di non farlo....mah

  4. #4
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Una domanda dipendente dalla curiosità suscitata dal tuo nickname : ti ho mandato un messaggio privato.

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    218
    Banalmente potresti fare un redirect alla pagina di logout sfruttando http://api.jquery.com/unload/; quel tuo metodo di logout ti fa cancellare la sessione e cookie. Punto.

    Mettendo anche il caso in cui nella Scheda 2 (hai usato la 1 per il logout) mantenga i cookie di sessione, non potrai comunque fare nulla giacché hai un sistema di login che controllerà la validità della sessione.

  6. #6
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    No il problema e' chiudere la sessione a chiusura della pagina del browser.
    Puoi intercettare l'evento onbeforeunload oppure usando jquery .unload() .
    Quindi fatto cio' chiudere la sessione e nel caso eliminare il cookie PHPSESSID cosi' invalidi la sessione e anche se ho altre pagina aperte la prima operazione che faccio mi fdira' "disconnnected" e fara' redirect a login.

    Certo sfruttare una procedura gi' fatta e' corretto ma va fatto lato server a scatenarsi dell'evento gestito con ajax. Io preferisco sempre avere un layer sul server per poter tenere sotto controllo queste operazioni critiche..... altrimenti possono essere dolori a volte

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2008
    Messaggi
    218
    Originariamente inviato da Virus_101
    No il problema e' chiudere la sessione a chiusura della pagina del browser.
    Puoi intercettare l'evento onbeforeunload oppure usando jquery .unload() .
    Quindi fatto cio' chiudere la sessione e nel caso eliminare il cookie PHPSESSID cosi' invalidi la sessione e anche se ho altre pagina aperte la prima operazione che faccio mi fdira' "disconnnected" e fara' redirect a login.

    Certo sfruttare una procedura gi' fatta e' corretto ma va fatto lato server a scatenarsi dell'evento gestito con ajax. Io preferisco sempre avere un layer sul server per poter tenere sotto controllo queste operazioni critiche..... altrimenti possono essere dolori a volte
    E io che ho detto?

  8. #8
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    hai detto dif are redirect alla pagina di logout... che e' ben diverso da avere un layer di controllo per questo genere di eventi.

    Se fari redirect su logout che succede?
    Credi di poterlo fare ? Ti ricordo che sei in ajax in fase di chiusura di una pagina .... che senso ha fare redirect al logout ?

    ti serve unop script/moduylo/controlloer/gestore chiamalo come vuoi per poter "gestire" questo caso, un semplice redirect a logout non va bene. DEVI avere il controllo.

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.