Hej, først og fremmest synes jeg, at jeres side er superfed og den har lært mig rigtig meget indtil videre!
Men som i selv ved, er jeres PHP-guide til nybegyndere, og det er det stadie jeg stadig er på. Derfor har jeg et spørgsmål vdr. sessions:
Jeg har lavet et lille login-system ud fra en tutorial, jeg har fundet. Det bruger sessions til at huske om brugeren er logget ind, så længe han er på siden (den sætter ikke session til at udløbe på et bestemt tidspunkt). Men det eneste der undrer mig er, at det er som om den ikke destroyer sessions, hvis man lukker browseren, når jeg kører siden på min localhost (bruger XAMPP) - man er altså stadig logget ind, selvom man lukker browseren og åbner den igen. Det er selvfølgelig ikke hensigten, da en bruger skal logge ud, selvom han glemmer at trykke logout.
Jeg har søgt rundt omkring og mange siger, at den burde gøre det... så jeg tænker, om det er en fejl i min opsætning af XAMPP? Eller er der en kode, jeg skal tilføje til mit script for at den gør det?
Destroy sessions uden at bruger trykker på login
-
sorteslyngel
- Begynder
- Indlæg:4
- Tilmeldt:2. okt 2012, 15:17
Re: Destroy sessions uden at bruger trykker på login
Hmm...synes du det er sådan på de fleste sites nu om dage, så er ikke sikker på jeg kan se problemet.
For det meste er det op til brugeren selv indstille sin browser så den rydder alle sessions når man lukker ned, men det er selvfølgelig ikke noget alle browsere er indstille til som default.
Går udfra at der er en logout knap, så det handler vel dybest set om for brugeren bare at bruge den.
Om ikke andet kan du jo selv opsætte en maksimum alder på din session som f.eks her:
For det meste er det op til brugeren selv indstille sin browser så den rydder alle sessions når man lukker ned, men det er selvfølgelig ikke noget alle browsere er indstille til som default.
Går udfra at der er en logout knap, så det handler vel dybest set om for brugeren bare at bruge den.
Om ikke andet kan du jo selv opsætte en maksimum alder på din session som f.eks her:
Kode: Vælg alt
if ( !isset($_SESSION['time']) {
echo 'Access Denied. Please login';
}
elseif ( isset($_SESSION['time'] && mktime() - $_SESSION['time'] > 1200 ) {
echo 'Your session has expired due to inactivity';
session_destroy();
$_SESSION=null;
}
else {
$_SESSION['time']=mktime();
//user is logged in, counter has been updated
} -
sorteslyngel
- Begynder
- Indlæg:4
- Tilmeldt:2. okt 2012, 15:17
Re: Destroy sessions uden at bruger trykker på login
Tak for svaret. Ved ikke helt hvad jeg gør... da det kan være, folk skriver artikler til siden og derefter bliver logged ud inden de får trykket send. Men ja, må vel bare have dem til at trykke log ud 


