Alternativ 1) Öka sessionstiden med variabeln session.gc_maxlifetime
Alternativ 2) Om du har ont om resurser, och vill minimera sessionen om det är möjligt: Göra ett javascript som varnar besökaren att sessionen håller på att gå ut (med settimeout()) - och alternativt fråga om besökaren vill logga ut/stanna kvar?
Alternativ 3) Om du har ont om resurser, men vill att alla som har sidan öppen fortfarande skall ha en session: Gör enligt ovan, men med min lilla modifikation:
Citat:
<script type="text/javascript">
function ReloadImage()
{
var img = new Image(0,0);
img.src = '<ditt php script som håller igång sessionen>';
setTimeout('ReloadImage()', <?php echo ini_get("session.gc_maxlifetime" ?>-5000);
}
ReloadImage();
</script>
|
Dvs. fem sekunder innan sessionen dör så laddas den om. (fem sekunder kompenserar för eventuell fördröjning av laddningstid - vilket beror på var på din sida du placerar koden vilket har betydelse för hur lång tid det dröjer innan den exekveras)