jak vypnout generování nové session |ID při přihlašování
- Karel Chramosil
- Člen | 114
NetteFramework-2.0.10-PHP5.3
Zdravím, lze jednoduše vypnout generování nové sessin ID při
přihlašování.
Nově přihlášený uživatel přijde o košík se starým session ID.
Předem díky za nápady.
- Jan Tvrdík
- Nette guru | 2595
@Karel Chramosil: To je divné. Regenerace session id by neměla vést ke ztrátě žádných dat v session.
- David Matějka
- Moderator | 6445
@Jan Tvrdík: IMHO data nemá uložena v session, ale v databázi a jako identifikátor je použito session id
EDIT: jako řešení mě napadá zdědit Nette\Http\Session a při regeneraci session id zavolat nějakej callback. nebo jednodušejc – před přihlášenim si získat sessionid a po přihlášení (myslim jako před a po volání $user->login())..
Editoval matej21 (5. 4. 2013 0:27)
- Jan Tvrdík
- Nette guru | 2595
IMHO data nemá uložena v session, ale v databázi a jako identifikátor je použito session id
V tom případě až použije jako identifikátor něco náhodného a to ať uloží do session.
- Karel Chramosil
- Člen | 114
Děkuji za rady, košík mám uložen v databázi, při přihlášení nového uživatele jsem uložil poslední user_id do košíku a dále pracuji s user_id. Akorát mám obavy, aby bez transakcí se v době hledání posledního user_id nestihl přihlásit někdo jiný. Varianta schovat si session před přihlášením a po přihlášení ji znovu nastavit mne napadla jako první, ale nevím jak starou session vnutit serveru.