Avatar billede webcreator Nybegynder
07. juli 2003 - 13:13 Der er 16 kommentarer og
1 løsning

Cookie vil ikke expire efter 1 dag

Hej.

Jeg har en cookie, som ikke vil expire når den har været aktiv en dag. Prøvede at sætte min PC's ur en dag frem - og nu kan jeg ikke få cookie'en til at forsvinde vha :

setCookie("e-study_auth", "", time()-1);

Hvad kan der være galt ?
Avatar billede erikjacobsen Ekspert
07. juli 2003 - 13:15 #1
setCookie("e-study_auth", "", time()-1000000);
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:15 #2
Hm, nu virker det pludselig igen. Anyways, min cookie låser under alle omstændigheder fast nu og da. Hvorfor ved jeg ikke..
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:15 #3
Vil det virkelig hjælpe med et højere tal ?
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:17 #4
.. og er det en "normal" reaktion min cookie laver ? Eller tyder det på fejl i et af mine scripts ? Jeg har lige lavet hele kernen i mit projekt om. Så jeg får svært ved at finde fejlen. Men jeg har valgt at lave mine cookies på nøjagtigt samme måde som tidligere - så det er vel næppe mine scripts den er gal med ?
Avatar billede erikjacobsen Ekspert
07. juli 2003 - 13:18 #5
tid på server og klient er sjældent særlig godt koordineret.
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:19 #6
Jamen hvad har serveren med sagen at gøre ? Den opretter vel min cookie efter local-time ?
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:19 #7
Nej, hvorfor skulle den nu det ? Det er jo et serverside script-sprog :o)
Avatar billede erikjacobsen Ekspert
07. juli 2003 - 13:23 #8
time() aflæser tiden på serveren, men cookien udløber efter tiden på klienten.
Det plejer at give sjove resultater
Avatar billede andy Nybegynder
07. juli 2003 - 13:24 #9
setcookie("ankommet",time(),time()+99999999);

Så kan du tjekke op på $_COOKIE["ankommet"]
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:34 #10
Andy > Hvad er det nu ?
Det er jo hvordan jeg laver en cookie. Det ved jeg skam :-)

Jeg lader mine køre i 2 år :
setCookie("e-study_auth", "$user|$pass", time()+60*60*24*365*2);

Men nu jeg ser efter, så har du to time()'ere. Hvorfor ?
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:36 #11
Erik > I see. Så er et af disse "Sjove resultater" altså, at en cookie ikke altid er lige villig til at expire :-)

Problemet opstod sjovt nok først _efter_, at jeg havde omskrevet en stor del af mit site. Så troede jeg havde lavet nogle fejl.

Men nu prøver jeg at sætte et størt, negativt tal på, i stedet for kun -1.
Avatar billede erikjacobsen Ekspert
07. juli 2003 - 13:38 #12
Stort - ikke størt - det vil ikke hjælpe ;))
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:42 #13
Hehe, ja, selvfølgelig.
(dumme keyboard) :-)

Så, nu slipper du ikke, Erik. Smid et svar :-D
Avatar billede erikjacobsen Ekspert
07. juli 2003 - 13:44 #14
Så'n si'r min kone også, når de er opvask.
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:46 #15
Hehe, avs :-p
Avatar billede webcreator Nybegynder
07. juli 2003 - 13:47 #16
tak for hjælpen, forresten
Avatar billede andy Nybegynder
08. juli 2003 - 16:16 #17
webcreator> Du kan også gøre sådan:
setCookie("e-study_auth", "$user|$pass|".time(), time()+60*60*24*365*2);
$cookie = explode("|", $_COOKIE["e-study_auth"]);
i $cookie[2] ligger så server time da du sætte cookien. Den kan du så bruge til at tjekke om cookien har været sat i mere end fx 1 dag.
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