Avatar billede justdoit Nybegynder
05. september 2002 - 20:05 Der er 11 kommentarer og
2 løsninger

husk iogin ved hjælp at checkbox!

Jeg har lavet mit login, som virker fint, men jeg vil gerne have at mine brugere skal kunne klikke på en checkbox, og derefter blive husket.

Hvordan laver jeg det??
Avatar billede hells Nybegynder
05. september 2002 - 20:21 #1
du kan lægge data som brugernavn i en cookie, de lægges på brugerens maskine.

noget lignende:
If brugernavn og password passer AND Request.Form("checkbox") = "boxens value" Then
    Response.Cookies("huskbruger")("navn") = brugernavn
    Response.Cookies("huskbruger").Expires = Date + 20'cookien eksisterer i 20 dage
End If

du kan så hente navnet sådan her:
Request.Cookies("huskbruger")("navn")
Avatar billede justdoit Nybegynder
05. september 2002 - 20:29 #2
ok, det ser godt ud, men kan du hjælpe mig med at sætte det ind, da jeg er lidt lost her:)

Her er de koder jeg logger ind med(nogle af dem)


<!--#include file="include/mappath.asp" -->

<% Select case Request.Querystring("mode")
     
  case "login"

          dim strBrugernavn, strKode
         
          strBrugernavn = Trim(Replace(Request.Form("brugernavn"),"'",""))
          strKode = Trim(Replace(Request.Form("kodeord"),"'",""))

If Len(strBrugernavn) > 0 And Len(strKode) > 0 Then

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open ConString

strSQL = "SELECT * FROM bruger WHERE (brugernavn = '" & strBrugernavn & "') AND (kodeord = '" & strKode & "')"

'strSQL sætning der blev bygget ovenfor, afvikles
Set rs = myConn.Execute(strSQL)

'Hvis brugernavn og kode findes, afvikles nedenfor
If Not (rs.BOF Or rs.EOF) Then

session("Brugernavn") = strBrugernavn
Avatar billede justdoit Nybegynder
05. september 2002 - 20:33 #3
min checkbox ser sådag ud:

<input type="checkbox" name="checkbox" value="huskmig">
Avatar billede justdoit Nybegynder
05. september 2002 - 20:38 #4
Jeg vil gerne give lidt flere point hvis det er det? - please :-)
Avatar billede hells Nybegynder
05. september 2002 - 21:00 #5
jeg vil tro det skal indsættes efter dit script:

'Hvis brugernavn og kode findes, afvikles nedenfor
If Not (rs.BOF Or rs.EOF) Then

session("Brugernavn") = strBrugernavn

'hvis checkboxen er checked
If Request.QueryString("checkbox") = "huskmig" Then
'så lav en cookie, der husker brugernavn
Response.Cookies("huskbruger")("navn") = strBrugernavn
'få cookien til at eksistere i 20 dage
Response.Cookies("huskbruger").Expires = Date + 20
End If


Koden til at logge en bruger ind, hvis cookien er der kunne så være:
If Request.Cookies("huskbruger").HasKeys Then
Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
End If
Avatar billede justdoit Nybegynder
05. september 2002 - 21:09 #6
Hvor skal dette stå??

Koden til at logge en bruger ind, hvis cookien er der kunne så være:
If Request.Cookies("huskbruger").HasKeys Then
Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
End If
Avatar billede hells Nybegynder
05. september 2002 - 21:12 #7
enten før eller efter den kode du har vist
Avatar billede justdoit Nybegynder
05. september 2002 - 21:23 #8
Jeg har prøvet lidt af hvert nu, men når jeg logger af, går helt ud af localhost og går ind igen, så er jeg ikke logget på????



Her er koderne, er der noget forkert? Jeg ville da mene at koden til at logge en bruger ind skulle ligge i default??






case "login"

          dim strBrugernavn, strKode
         
          strBrugernavn = Trim(Replace(Request.Form("brugernavn"),"'",""))
          strKode = Trim(Replace(Request.Form("kodeord"),"'",""))

If Len(strBrugernavn) > 0 And Len(strKode) > 0 Then

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open ConString

strSQL = "SELECT * FROM bruger WHERE (brugernavn = '" & strBrugernavn & "') AND (kodeord = '" & strKode & "')"

'strSQL sætning der blev bygget ovenfor, afvikles
Set rs = myConn.Execute(strSQL)

'Hvis brugernavn og kode findes, afvikles nedenfor
If Not (rs.BOF Or rs.EOF) Then

'hvis checkboxen er checked
If Request.QueryString("checkbox") = "huskmig" Then
'så lav en cookie, der husker brugernavn
Response.Cookies("huskbruger")("navn") = strBrugernavn
'få cookien til at eksistere i 20 dage
Response.Cookies("huskbruger").Expires = Date + 720
End If

session("Brugernavn") = strBrugernavn
session("logget_ind") = "ja"
session("fornavn") = rs("fornavn")
session("efternavn") = rs("efternavn")
session("brugerniveau") = rs("brugerniveau")
session("brugernavn") = rs("brugernavn")
Session.timeout = "20"

'Koden til at logge en bruger ind, hvis cookien er der kunne så være:
If Request.Cookies("huskbruger").HasKeys Then
Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
End If

Select Case CInt(rs("brugerniveau"))
Case 0
  response.redirect request.form("denneside") & ".asp"
Case 1
  response.redirect request.form("denneside") & ".asp"
End Select

Else

response.redirect("loginfejl.asp")
End If

myConn.Close
Set myConn = Nothing
End If
Avatar billede hells Nybegynder
05. september 2002 - 21:29 #9
prøv at flytte det her:
'Koden til at logge en bruger ind, hvis cookien er der kunne så være:
If Request.Cookies("huskbruger").HasKeys Then
Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
End If
op over case "login"
Avatar billede justdoit Nybegynder
05. september 2002 - 21:32 #10
Bliver der så logget ind automatisk når brugeren går ind på hjemmesiden??
Avatar billede justdoit Nybegynder
05. september 2002 - 22:02 #11
? Fandt ikke ud af det!!
Avatar billede justdoit Nybegynder
05. september 2002 - 22:03 #12
kan med et svar så får du lidt for forsøget, og så prøver jeg et andet sted!
Avatar billede hells Nybegynder
06. september 2002 - 09:08 #13
svar
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