Beh, la sessione dura, appunto, per tutta la durata della sessione.
Riavvio computer = chiusura browser
Chiusura del browser = chiusura sessione
oppure session_destroy() = chiusura sessione
I cookie vengono salvati in un file sul computer dell'utente.
Quando riavvii il browser, la sessione viene riaperta, perdendo i dati della sessione precedente, mentre i cookie vengono recuperati dalla lista dei cookie, permanenti fino a data concordata (+3600, +100000000 secondi o quello che preferisci).
Per questo per la lingua va utilizzato il cookie.
La sessione può servire per un login, in quanto rimane "salvato nell'etere" fino a chiusura del browser o distruzione della sessione stessa, quindi più sicuro nella protezione di zone riservate in quanto non salva dati sensibili dentro a un file.
Basta che setti i cookie così:
Codice PHP:
//l'ultimo valore è la scadenza. 3600 secondi = 1 ora
setcookie("nomecookie","valorecookie",time()+3600);
e lo richiami all'inizio della pagina:
Codice PHP:
include "lingue/".$_COOKIE['nomecookie'].".php;
e sei a posto.