nel caso che tu decida di distruggere la sessione dovresti sempre anche distruggere l'array $_SESSION.... (ultima parte del tuo script) proprio perche' come hai visto se il cliente rilancia l'url il suo cookie di sessione continua ad essere valido e riesumerebbe la sessione con lo stesso id teste' distrutta....Originariamente inviato da Trinità76
Ho fatto le modifiche che mi hai suggerito:
Ho usato isset() nella pagina login e ho messo direttamente $_SESSION['var'] nella pagina check_login senza usare session_register(). Per il resto il procedimento ti sembra ok?
Salvaguarda il contenuto piu' che il session_id# che tra l'altro puoi sempre cambiare nel caso del check fallito...
vedi session_regenerate_id() ... puoi sempre spiazzare il cookie del browser cambiando l'id di sessione.
Per il funzionamento in se che dire... bisogna provare da diversi browser, da stessi browser con differenti finestre o/e schede per verificare il comportamento sul mantenimento della validita' di sessione. L'uso del database per verificare i dati di sessione puo' anche essere valido ma non ti da nulla in piu', serve per statistica. Mi lascia perplesso l'associazione ip/session_id.... potrebbe cambiare l'ip senza chiudere il browser per down della rete per esempio ... ripeto bisognerebbe provare.... l'idea e' comunque buona.
Piuttosto prenderei in considerazione il completo passaggio della gestione delle sessioni su db.
![]()

Rispondi quotando