In un mio sito le sessioni sono portate avanti con il sid che viaggia con metodo LINK.
Quando mi loggo nella index viene eseguito un semplice header:
Codice PHP:
header("Refresh: 2;URL=index.php?sid=".$sid);
Incorrò però in un fastidioso problema.
Se l'utente lascia scadere la sessione e viene bloccato nella sua navigazione, sull destra riappare giustamente il modulo di login ma se lui lo utilizza nuovamente torna alla index (Normale direte voi).
Ecco, io vorrei che tornasse alla pagina che stava visitando, che dovrebbe avere una path simile a:
index.php?ctrl=news
index.php?ctrl=profilo
Stavo pensando di usare l'array superglobale $HTTP_REFERER, così da indirizzarlo esattamente da dove proveniva appendendo il nuovo sid al posto del vecchio.
Codice PHP:
$origine = $HTTP_REFERER
header("Refresh: 2;URL=$origine&sid=".$sid);
Come facilmente intuirete in $origine però è già compreso il vecchio sid essendostampato nella barra di navigazione per cui devo trovare un modo per elidere il vecchio e appiccicarci il nuovo.
Consigli?