Avatar billede petey Nybegynder
28. juli 2001 - 12:55 Der er 7 kommentarer og
1 løsning

Tjek om Cookie eksisterer

Jeg er igang med at lave en side, hvor brugeren skal registrere sig. Problemet er, at jeg kan ikke finde ud af hvordan man undsøger om brugeren er registreret/ikke registret dvs. om der er lagt en cookie ned hans harddisk eller om der ikke er. Er der nogen der kender en metode, så man kan tjekke, om der er blevet oprettet en cookie fra ens websted på et tidligere tidspunkt, eller om der ikke er ?
Avatar billede netsrac Praktikant
28. juli 2001 - 12:57 #1
Hvis du lægger noget data i cookien kan du bare bruge

If Request.Cookies(\"cookienavn\") <> \"\" Then
Avatar billede petey Nybegynder
28. juli 2001 - 13:15 #2
->netsrac: Jeg har prøvet det, men det virker ikke. Her er min udgave:

<% if (Request.Cookies(\"brugerprofil\")(\"fornavn\"))!=\"\") { Response.Write(\"Hej \"+Request.Cookies(\"brugerprofil\")(\"fornavn\")+\". Du er registreret.\");  }
  else { Response.Write(\"Hej med dig! Du er ikke registreret\");  }

Den kommer ikke op i tilfælde if-sætningen. Den ryger ned i else. Hvis jeg istedet for != bruger ==, så får jeg undefined!
Avatar billede prof2 Nybegynder
28. juli 2001 - 13:16 #3
Skal brugeren ikke registrere sig i en database ? Hvis han nu sletter sin cookie, så er han ikke registreret mere, eller?
Avatar billede prof2 Nybegynder
28. juli 2001 - 13:20 #4
petey>> Det du skriver der er altså Jscript. netsrac skrev VBScript.
Avatar billede netsrac Praktikant
28. juli 2001 - 13:25 #5
JScript er ikke min stærke side, men kan du ikke bruge:

if (Request.Cookies(\"brugerprofil\")(\"fornavn\"))== undefined)
{
Response.write(\"Ikke registreret\")
}
else
{
Response.write(\"Registreret\")
}
Avatar billede petey Nybegynder
28. juli 2001 - 13:57 #6
->prof2: Jo det er rigtigt at brugerens oplysninger ligges ind i en database. Du har også helt ret i, at så er brugeren ikke registreret mere, hvis brugeren sletter sin cookie. Men så må brugeren registrerer sig igen. Du har helt ret i at det jscript og netsrac er vbscript, og at det i virkeligheden nok er der, at problemet ligger. Jeg er i tvivl om, man kan sammenligne med en tom streng i jscript. -> netsrac: Jeg har prøvet din ide, både med \"undefined\" og bare undefined. Desværre det virker ikke. Jeg prøver, at kigge i jscript-dokumentationen. Tak for hjælpen prof2 og netsrac.
Avatar billede jakobandersen Nybegynder
28. juli 2001 - 14:00 #7
Du kan i jscript bruge

if(Response.Cookies(\"Brugerprofil\")(\"fornavn\").length > 0){
Response.Write(\"Du er registreret\");
}else{
Response.write(\"Du er ikke Refistreret\");
}
Avatar billede petey Nybegynder
28. juli 2001 - 14:46 #8
Problemet er løst. Det virker af en eller anden grund når jeg først opretter et String-objekt, som indeholder fornavn fra cookien.Dvs.:
new String(Response.Cookies(\"Brugerprofil\")(\"fornavn\"));. Herefter kan jeg gøre som netsrac skriver, med at sammenligne med \"undefined\" som en streng. Det er bare underligt, at man bliver nødt til at først at lave et String-objekt, når man f.eks. ikke skal gøre det, når man sammenligner med f.eks. Request.Form. Nå, men nu virker det. ->moonduck: Din metode vil også virke, det er jeg sikker på. Endnu en gang tak for hjælpen alle sammen.
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
Kurser inden for grundlæggende programmering

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