Sei nel posto giusto.
La maggior parte delle applicazioni PHP avrà sessioni attive per tutte le visualizzazioni di pagina, indipendentemente dal fatto che un utente abbia effettuato l'accesso. Avrebbe essenzialmente una sessione start () all'inizio dello script e un save () alla fine. Quella sessione sarebbe esistita per l'intera visita al sito, o più a lungo, a seconda di come il tuo PHP ha impostato la scadenza dei cookie.
Quando un utente invia un modulo di accesso e accede correttamente, è possibile quindi memorizzare le informazioni dell'utente come variabile di sessione. Ad esempio, nel modo più semplice, è possibile memorizzare l'ID utente associato alla sessione:
$_SESSION['user_id'] = 1234;
Quando la sessione viene salvata, quel valore viene memorizzato con la sessione. Le variabili di sessione non vengono inviate al client: vengono memorizzate sul server Web (dove esattamente è memorizzato è configurabile, ma idealmente in un database).
Ora, al caricamento della pagina successiva, puoi controllare il valore di $_SESSION['user_id']
per ottenere l'id utente dell'utente connesso, se presente. Questo perché quando la sessione viene caricata all'inizio dello script, ha accesso alle variabili di sessione assegnate su altre pagine in quella sessione.
Quando un utente si disconnette, si imposta $_SESSION['user_id']
su 0. Al caricamento della pagina successiva, l'utente non è più associato a quella sessione.
Se si desidera che l'utente venga disconnesso quando il browser è chiuso, è necessario impostare la durata del cookie su 0. Se si desidera mantenere la sessione, si desidera impostare la durata del cookie sul numero massimo di secondi che si desidera vuoi che la sessione esista (ad esempio, 60 * 60 * 24 * 30 sarebbe 30 giorni).
Questa è solo una panoramica concettuale. Ci sono alcuni problemi di sicurezza relativi alle sessioni, quindi assicurati di averne conoscenza prima di rendere un sito attivo.