Salve ragazzi,
sto studiando le sessioni in php e ho bisogno di risolvere un problema che ho:
Il tutto parte da un'applicazione per smartphone che manda richieste get e post ad una mia pagina web php.
Ho un utente che si logga su un sito, creando una sessione.
Dopo essersi loggato correttamente, l'utente avvia una sessione e un flag su un db viene messo a true per indicare che l'utente è collegato, viceversa è offline.
Il mio problema è che se per sbaglio l'applicazione dovesse crashare, non riesco a mandare al server la richiesta di logout, ma la sessione rimane aperta giusto? nel senso, se non supera il suo timeout dovrebbe rimanere salvata.
Come faccio a far mettere il flag sul db a 0 allo scadere della sessione? Ho visto che si possono implementare interfacce che permettono l'uso personalizzato del salvataggio delle sessioni, il che mi ha incoraggiato ad usarle... ma il problema rimane...
E' importante che un utente non possa loggarsi due volte contemporaneamente, per cui per un terminale esiste un unico utente ed un'unica sessione.
Inoltre, dovendo mandare username e password tramite richiesta get/post, l'unica possibilità per indicare che un utente debba effettuare il logout è mandare una richiesta del tipo:
http://www.example.com/?request=logo...sword=Password.
Ed è qui che mi servono le sessioni, perchè se chi ha effettuato tale richiesta non possiede la stessa sessione di chi effettivamente ha effettuato il login, la richiesta viene rifiutata.