Avatar billede tycho Nybegynder
01. oktober 2003 - 20:40 Der er 14 kommentarer og
1 løsning

Korrekt brug af sessions?

Hej.
Jeg har nogle problemer med et loginsystem jeg er ved at lave.
Jeg opretter en $_SESSION, og den virker fint, men jeg kan ikke få fjernet den igen (uden at vente på at den udløber, eller fjerne den fra tmp mappen).
P.T. bruger jeg unset(), men jeg har også prøvet at sætte den til false, "" osv, men intet hjælper.
Jeg ville blive glad hvis en af jer kunne give mig et eksempel på hvordan jeg, korrekt, opretter og fjerner en session.
mhv Niels
Avatar billede detox Nybegynder
01. oktober 2003 - 20:42 #1
Brug: session_destroy()
Avatar billede detox Nybegynder
01. oktober 2003 - 20:47 #2
Fx:

<? session_start();
$_SESSION['fornavn'] = 'Anders';
$_SESSION['efternavn'] = 'And';
$_SESSION['adresse'] = 'Paradisæblevej 2';
$_SESSION['by'] = 'Andeby';
unset($_SESSION);
session_destroy();
?>
Avatar billede tycho Nybegynder
01. oktober 2003 - 20:48 #3
Jeg har oprettet $_SESSION['loggedin'], så hvordan bruger jeg session_destroy()? (den kræver jo ikke nogen parameter).
Avatar billede tycho Nybegynder
01. oktober 2003 - 20:48 #4
sry, så ikke dit nyeste indlæg
Avatar billede detox Nybegynder
01. oktober 2003 - 20:50 #5
Hvis du prøver ovenstående, så er sessionen død! Tjek det med:

print_r ($_SESSION);
Avatar billede tycho Nybegynder
01. oktober 2003 - 20:55 #6
Det virker, tak skal du ha' !
Avatar billede detox Nybegynder
01. oktober 2003 - 20:55 #7
Ellers brug: session_unset(), det er nok mere korrekt:

session_unset();
session_destroy();
Avatar billede tycho Nybegynder
01. oktober 2003 - 20:56 #8
Lige en ting mere:
Vil dette fjerne alle sessions på serveren, eller bare klientens?
Avatar billede detox Nybegynder
01. oktober 2003 - 20:56 #9
Velbekommen c",)
Avatar billede detox Nybegynder
01. oktober 2003 - 20:57 #10
Kun klientens.
Avatar billede tycho Nybegynder
01. oktober 2003 - 20:57 #11
perfekt.
Avatar billede sukos Juniormester
02. oktober 2003 - 13:36 #12
hmm, hvis du slette ALT som er sat, og du bruger $_SESSION, skulle den korrekte måde vist være

$_SESSION = array();
session_destroy();

http://dk.php.net/manual/en/function.session-destroy.php

Dog har du stadig navnet på de sessions du har sat, liggende i filen, og for at fjerne dem også,

$_SESSION = array();
session_destroy();
@unlink(session_save_path() . session_id());
Avatar billede detox Nybegynder
02. oktober 2003 - 14:46 #13
Nu har jeg prøvet:

session_unset();
session_destroy();

og så kan jeg ikke finde nogen rester af sessionen, i hvert fald giver:
print_r($_SESSION);
Array()
Avatar billede sukos Juniormester
02. oktober 2003 - 14:53 #14
øh, ja, men hvis du kikker i filen, er var'en sat til !, men navnet på var'en er der stadig.
Avatar billede detox Nybegynder
02. oktober 2003 - 15:00 #15
Ja, det er rigtigt. Det må være så man kan starte en ny session, hvis man skulle få brug for det. Bruger man:

unset($_SESSION);
session_destroy();

sletter den vidst osse filen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester