Dubbio tra cookie e Session

Ciao a tutti,

ho un dubbio sulla durata del log dell utente.

ho messo un cookie che dura 2 minuti, dopo di che mi aspetto che sia "sloggato" e invece risulto sempre loggato. ma quindi lo start session dove viene fatto?

perché io ho seguito più o meno lo stesso procedimento di questo post.

Quindi mi domando, quando scade il cookie che succede? come vedo quanto dura la session (oltre che dal php.ini?)

grazie ragazzi

Ho il presentimento che tu stia facendo un pò di confusione, cosa utilizzi per il login? i cookie o la sessione?

ciao, una volta che vado a buon fine con l autenticazione utilizzo i cookie


Yii::app()->user->login($identity,3700);

dove appunto questo dura poco proprio per provare

Ancora non ho capito dove vedo la durata del mio login, oltre a questo, vorrei controllare che in determinate pagine, l’utente sia loggato altrimenti venga fatto un redirect.

Adesso sto facendo così:


if(Yii::app()->user->id == "")

$this->redirect(array('autenticazione/autenticazione'));

che rimanda appunto alla pagina del login, ma non vorrei scrivere queste due righe in tutte le action dei controller.Inoltre in tutte le pagine dovrei verificare il livello dell’utente('Admin, user ecc)

Come posso fare?

Grazie

La durata del cookie la puoi vedere direttamente dal tuo browser andando a vedere, appunto, tra i cookie :lol:

si lo so, ma se imposto un cookie a 4 minuti per esempio, al 5 minuto sono sempre loggato.

Io ho il problema opposto al tuo. Devo allungare di molto il tempo di login.

Hai mica scoperto come si faccia?

io penso che il tempo login lo setti da php.ini

Secondo me invece dipende dalla configurazione del browser.

Da quel che ho capito, l’informazione sulla durata viene salvata nei cookie,

ma se il browser li cancella alla chiusura (o non li accetta proprio)

quell’informazione yii non ce l’ha e quindi ecco che sorge il problema.

Se la mia ipotesi è corretta, (e questo solo un esperto potrà dirlo),

stavo pensando di provare ad esplorare altre strade, quali il local storage ad esempio

se lascio il browser aperto per un po’ di tempo , in una pagina dove è necessario il login, e faccio aggiorna, mi ritorna al Login ( Session Scaduta)

eco perché secondo me è php.ini, ma non ne sono ancora sicuro al 100%