Questione : Sessioni del PHP

Ho letto sopra le sessioni del PHP per le ore e la logica non ha significato me.  Lo incita appena a volere usare la soluzione tried-and-true del biscotto ma le sessioni sembrano un poco più sicure in modo da non voglio dare in su yet.

After che un utente entra al mio Web site, voglio semplicemente registrare una sessione del PHP che persisterà per nient'altro di 2 ore, o 30 minuti di inattività sul Web site, quale viene first.

Seems abbastanza semplice.  Ma ottengo confuso con le sessioni perché ci sono variabili multiple che potrebbero essere set.

per esempio, che cosa sono la differenza fra i session_get_cookie_params () e session.cookie_lifetime?  E che cosa circa session.gc_maxlifetime che, io capiscono, si tiene al corrente della vita della sessione prima che trashed automaticamente? Che cosa se regolo il biscotto per espirare in 2 ore ma nel session.gc_maxlifetime è uguale a 1440 (24 minuti)?  È la mia sessione persino che va vivere abbastanza a lungo? il

I inoltre ha letto che è meglio da mantenere appena le regolazioni di sessione del PHP di difetto (cioè session.gc_maxlifetime=1440) e regolare appena il miei propri il valore di sessione “del timestamp„ che posso usare per confrontare quando l'utente ha entrato nel Web site o l'ultimo ha scattato sopra something.

Ugh, posso qualcuno aiuto disfare questo mistero con le sessioni ed i biscotti? il

And non lo fa riferimento prego alla guida di sessione sul Web site del PHP perché sono stato all over esso already.

Thank voi!

class= del

Risposta : Sessioni del PHP

Qui è una risposta “grossolana„.  Osservare sopra il mio articolo qui.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_2391-PHP-login-logout-and-easy-access-control.html

In pratica, la vostra sessione sta andando vivere abbastanza a lungo per tutto che il vostro cliente potrebbe volere fare, a meno che che cosa il cliente vuole fare sia di entrare al luogo, quindi che abbandoni il calcolatore e che vada all'opera, quindi ritorna e pensa ancora essere entrata.  Quello non funzionerà.

Ogni nuovo carico della pagina allo stesso Web site (con alcune limitazioni importanti) ripristina efficace il tempo di scadenza del biscotto estendendolo nel futuro.  L'estensione di difetto è circa 24 minuti.

I biscotti ed i browser hanno interazioni uniche.  Considerare questo: Tutto il caso della parte di Firefox (finestre, linguette, viste) lo stesso vaso di biscotto.  Potete avere due finestre di browser entrate allo stesso Web site.  Molto confusionario agli sviluppatori, ma raro in pratica.  La finestra #1 regola un biscotto, la finestra #2 lo ripristina ed estende il relativo tempo.  Il comportamento è prevedibile, ma gli sviluppatori impazienti ritengono raramente con che cosa sta accadendo ai biscotti.  Firefox gli dà un buon senso visualizzare i biscotti - usarlo.

Ora alle edizioni identificate.  Volete arrestare una sessione dopo due ore (di attività?) o 30 minuti di inattività.  Non funziona come quella.  A meno che andiate alla difficoltà capire le sessioni dettagliatamente e forse per scrivere i vostri propri alimentatori di sessione, le vostre sessioni espireranno dopo 24 minuti di inattività.  La parte circa due ore non è applicabile - ogni nuovo uso di un Web page che contiene il session_start () getterà il prespegnimento altri 24 minuti nel futuro.  L'accumulazione di immondizia è imprecisa, ma la scadenza del biscotto è ragionevolmente credibile.

Quanto a questo, “non farlo riferimento alla guida di sessione sul Web site del PHP„ -- spiacente, ma esso è il riferimento di pagina definitivo dell'uomo.  Dovete capirli e se non soddisfate per inviare indietro qui con le domande specifiche.
Altre soluzioni  
 
programming4us programming4us