Gå til innhold

Anbefalte innlegg

Jeg har laget en login som fungerer.

Hvordan lager jeg en session/cokie slik at man er logget inn en hvis tid

<%

Option Explicit

%>

<html>

<head>	<title>Hallo3</title></head>

<body>

<FORM action="hallo3.asp" method="post">

<TABLE>

<TR>

 <TD valign="top">Username:</TD>

 <TD valign="top"><INPUT type="text" name="txtUsername"></TD>

</TR>

<TR>

 <TD valign="top">Password:</TD>

 <TD valign="top"><INPUT type="password" name="txtPassword"></TD>

</TR>

<TR>

 <TD valign="top"></TD>

 <TD valign="top"><INPUT type="submit" value="Login"></TD>

</TR>

</TABLE>



</FORM>

<%

Dim openStr, sql, cn, rs, bruker, pass

bruker =  Request.Form ("txtUsername")

pass =  Request.Form ("txtPassword")

Response.Buffer = TRUE



openStr = "driver={Microsoft Access Driver (*.mdb)};" &_  

   "dbq=" & Server.MapPath("Logins.mdb")

Set cn = Server.CreateObject("ADODB.Connection")	

cn.Open openStr

 sql = "SELECT * FROM Logins WHERE Brukernavn = '" & bruker & "' AND Passord = '" & pass & "'"



Set rs = Server.CreateObject("ADODB.Recordset")

rs.Open sql, cn

 

On Error Resume Next

rs.MoveFirst

Do While Not rs.EOF

 Response.write "Din status er " ' Dette er bare en test om loginen har fungert

 Response.write Server.HTMLEncode(_

 	rs.Fields("Status")) & "<BR>" & vbCrLf

 rs.MoveNext

Loop



rs.Close

set.rs = Nothing

cn.Close

Set cn = Nothing



%>



</body>

</html>

Lenke til kommentar
Videoannonse
Annonse

Det spørs litt på hvordan du vil løse problemet, du har 2 måter her igrunn:

1. Du kan være så og så lenge "idle" før du automatisk blir logget ut.

2. Du er bare pålogget for en viss tid før du blir logget ut, uansett om man er idle eller ikke.

 

Okei, så til løsningsforslag:

1. Bruk av session-objektet er det enkleste her igrunn.

Si at du ved en vellykket innlogging setter en session-variabel til å inneholde en verdi.

session("LoggedIn") = "True"

For hver side som skal være beskyttet av passord må du da han en sjekk av dette, f.eks:

if session("LoggedIn") <> "True" then

    response.redirect("login.asp")

end if

I det du oppretter denne session-variablen, kan du også sette timeout ved å skrive:

session.timeout = 10

Dette vil gjøre at serveren sletter alle opprettede session-variabler dersom brukeren ikke oppdaterer siden iløpet av 10 minutter. Ergo, neste gang han prøver å oppdatere siden vil han bli redirected til "login.asp".

 

2. Det samme gjelder egentlig for cookies, du kan sette en cookie til å få en verdi etter vellykket innlogging, og bruke "expires"-egenskapen for eksempel. Les mer om cookies her: http://msdn.microsoft.com/library/default....m_resoccook.asp

Håper dette hjelper deg på vei! Tjo!

Lenke til kommentar
  • 2 uker senere...
  • 2 uker senere...

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...