Gå til innhold

Anbefalte innlegg

Holder på med en enkel login-funksjon mot en database, og har fått den biten til å fungere.

 

Ved riktig innlogging registreres brukernavnet i en session-variabel slik:

session("brukernavn")

 

Men hva hvis jeg vil sjekke om en session er registrert (dvs. at bruker er logget inn)?

 

Har forsøkt med:

if session("brukernavn") then

her ligger koden som gir tilgang til innholdet i databasen

else

response.redirect "en_eller_annen_side.html"

end if

 

Men dette fungerer altså ikke...noen forslag?

Lenke til kommentar
Videoannonse
Annonse

husker jeg ikke helt feil må du skrive noe slikt:

 

if session_registered("NavnPåSession") then

kode som skal utføres

end if

 

 

(er ikke helt sikker på om jeg har krevet den kommandoen riktig, men det er noe i den duren. kan finne det ut på dagen imorgen og legger ut beskjed hvis overnevnte kode er _feil_)

Lenke til kommentar

Jeg regner med at det som skjer når du kjører denne koden er at brukeren blir redirecta uansett?

 

Det kommer nok av at IF setningen du kjører ikke gir et riktig resultat, det ligger ikke en boolean verdi i session-objektet du har laget, men en string. Det du heller bør prøve er:

 

if session("brukernavn") <> "" then

  'Vis siden her ja gitt!

else

  response.redirect("login.asp")

end if

 

Det bør absolutt funke :)

Lenke til kommentar

Nja, jo... Du kan ikke slette en enkelt session variabel med en enkelt kommando, men du kan jo selvfølgelig sette den til 0 ved f.eks:

Session("brukernavn") = ""

 

Derimot kan du slette samtlige session variabler som ble opprettet under en sesjon, og det gjøres ved å skrive:

Session.Abandon

 

Husk også på at du har noe som heter for "TimeOut", default verdi for denne i IIS5.0 er 10 minutter, men du kan endre denne ved å skrive:

Session.Timeout = n

(hvor n tilsvarer tid i minutter.)

 

Håper dette ga det svaret du ville ha!

Lenke til kommentar

Heh, har faktisk aldri brukt den kommandoen selv, men utifra det som virker logisk så fjerner den bare innholdet ja...

I de fleste tilfeller vil det ikke utgjøre noen forskjell å nullstille verdien til en session fremfor å ødelegge den - MEN: Dersom du utvikler en større webapplikasjon med mange tusen besøkende hver dag er det dumt å "bare" nullstille, fordi hver session som blir opprettet blir lagret på serveren. Så, for å frigjøre minne er det nok lurt å ødelegge objektet av og til ja.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...