Avatar billede justdoit Nybegynder
06. september 2002 - 11:59 Der er 15 kommentarer og
2 løsninger

Automatisk login som her på eksperten!

Jeg vil gerne at mine brugere skal kunne klikke i en checkbox, hvorefter de automatisk bliver logget ind næste gang de besøger siden.

Min side er bygget sådan op:

1)Default.asp

2)I default.asp har jeg min login koder liggende i en include fil, hvor jeg bruger "select case" - altså case bruger logget ind, så viser den et og case ikke logget ind, så viser den input felterne.

Hvordan/hvor laver jeg cookies som bruger bliver husket???


Jeg har dette, men ved ikke helt hvor jeg skal sætte det:


'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 2 år
Response.Cookies("huskbruger").Expires = Date + 720
End If




Og den der skal hente brugeren:

'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 exp-ralle Nybegynder
06. september 2002 - 12:03 #1
Hvad er problemmet så?
Avatar billede benson Nybegynder
06. september 2002 - 12:06 #2
Du laver et felt mere i din cookie der hedder "autologon"
Og hvis autologon er YES, så er han logget ind, hvis ikke, så skal den vise login vinduet !

Benson
Avatar billede justdoit Nybegynder
06. september 2002 - 12:21 #3
Mit problem er at når jeg markere chaekboxen og logger ind, - så er jeg ikke logget ind næste gang jeg åbner siden!!

Min checkbox ser sådan ud:

<input type="checkbox" name="checkbox" value="huskmig">

benson-> Hvor skal jeg skrive det, og kan jeg ikke få noget mere kode, da jeg ikke er særlig stiv i cookies!!
Avatar billede benson Nybegynder
06. september 2002 - 13:01 #4
Tilføj denne i din FORM

<input type="checkbox" name="autologon" Value="autologon">

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

Tjek Cookies

If Request.Cookies("huskbruger").HasKeys Then
  Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
  Session("login")=Request.Cookies("huskbruger")("autologon")
End If

IF session("login")="autologon" THen
' Bruger ER logget på, og vis da ok infor
ELSE
' Bruger er ikke logget på
End if


Noget i den stil
Avatar billede justdoit Nybegynder
06. september 2002 - 16:31 #5
Jeg har ændret til <input type="checkbox" name="autologon" Value="autologon"> og sat koden ind som du kan se neden under, men hvordan skal jeg sætte dette ind????

IF session("login")="autologon" THen
' Bruger ER logget på, og vis da ok infor
ELSE
' Bruger er ikke logget på
End if





<% If Request.QueryString("checkbox") = "autologon" Then
'så lav en cookie, der husker brugernavn
Response.Cookies("huskbruger")("navn") = strBrugernavn
Response.Cookies("huskbruger")("autologon") = Request.QueryString("autologon")
'få cookien til at eksistere i 2 år
Response.Cookies("huskbruger").Expires = Date + 720
End If

If Request.Cookies("huskbruger").HasKeys Then
  Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
  Session("login")=Request.Cookies("huskbruger")("autologon")
End If
%>

<% If Session("logget_ind") <> "ja" Then %>
  <Form name="bruger" method="POST" action="logxx_db.asp?mode=login" style="margin:0px;">osv....</Form>
                 
                  <% Else %>
                 
                  <% If Session("logget_ind") = "ja" Then %>
                 
                  <Form name="bruger_logaf" method="POST" action="logxx_db.asp?mode=logaf" style="margin:0px;">
                  osv...</Form>
<%
End If
End If
%>
Avatar billede benson Nybegynder
06. september 2002 - 22:46 #6
Det var ikke meningen at du skulle slette:
<input type="checkbox" name="checkbox" value="huskmig">

På den måde giver du jo stadig brugeren valget for om "du" må gemme hans information på hans PC.

Så det jeg forestiller mig er at du har en form med 2 checkboxes og ét tekstfelt:
<FORM Action="tjekdata.asp">
<input type="checkbox" name="checkbox" value="huskmig">
<input type="checkbox" name="autologon" Value="autologon">
<input type="TEXT" name="brugernavn" value="Dit navn">
</FORM>


Når du så parser disse info's til ASP'en der skal behandle data, kan du gøre følgende:
tjekdata.asp

<%
If Request.QueryString("checkbox") = "huskmig" Then
    'så lav en cookie, der husker brugernavn
    Response.Cookies("huskbruger")("navn") = Request.QueryString("brugernavn")
    Response.Cookies("huskbruger")("autologon") = Request.QueryString("autologon")
    'få cookien til at eksistere i 2 år
    Response.Cookies("huskbruger").Expires = Date + 720

' Data er gemt. Og spring så til hoved siden:
    Response.Redirect("default.asp")
ELSE
    'Brugeren vil ikke gemme data, men skal vel stadig logges ind ?
   
    Session("Brugernavn") = Request.QueryString("brugernavn")
    Session("login")="autologon"
    'Bemærk bare fordi denne session variabel gemmes, så har brugeren ikke autologon næste gang !
End If

%>

Så er informationen gemt på hans PC.

-------------

Det næste du skal, er at tilføje tjek kode til din startside på WEB.

Denne skal tjekke om brugeren vil autologon ?

' her henter du cookies ind i session variabler

If Request.Cookies("huskbruger").HasKeys Then
  Session("Brugernavn") = Request.Cookies("huskbruger")("navn")
  Session("login")=Request.Cookies("huskbruger")("autologon")
End If


' Her tjekker du om bruger har valgt autologon

IF session("login")="autologon" THen
' Bruger ER logget på, og vis da ok infor
    response.redirect("Home.asp")
' Eller anden direkte HTML kode.

ELSE
' Bruger er ikke logget på, og skal derfor vises login billedet eller siden
    response.redirect("Login.asp")

End if

Håber du kan få det til at passe OAO.
Avatar billede justdoit Nybegynder
06. september 2002 - 23:02 #7
Jeg kan godt se hvad din mening er, men jeg kan ikke finde rundt i dine koder! Hvis jeg sender filen til dig, vil du så prøve at sætte det ind - så skal jeg nok give dig nogle flere point???
Avatar billede benson Nybegynder
07. september 2002 - 21:37 #8
Ok prøv bare !Det kan aldrig gå værre end helt galt :-)

Jeg skal nok prøve !

news@hojholt.dk
Avatar billede justdoit Nybegynder
08. september 2002 - 16:35 #9
Hej, jeg har sendt dig en mail - har du ikke fået den?

vh

Justdoit
Avatar billede benson Nybegynder
08. september 2002 - 20:30 #10
Jov jov :-)

Men jeg havede lige en havelåge der skulle bygges i dag ?

Jeg er i gang med at kigge på det
Avatar billede benson Nybegynder
08. september 2002 - 21:00 #11
PS ! Er det meningen at du vil have tjekket når brugeren besøger dit site (altså i starten!) ?
Avatar billede justdoit Nybegynder
08. september 2002 - 22:02 #12
Jeg forstår ikke helt hvad  du mener med om jeg vil have tjekket når brugeren besøger mig site.

Men det jeg gerne vil have lavet er, hvis brugeren klikker på checkboxen, så skal der skrives en cookie, som automatisk logger brugeren ind næste gang brugeren klikker ind på hjemmesiden..

Håber det var det du mente!!
Avatar billede benson Nybegynder
09. september 2002 - 08:45 #13
OK !

Hvad hedder siden hvor brugeren indtaster sine data ? og hvor checkboxen er ?
Avatar billede justdoit Nybegynder
09. september 2002 - 09:00 #14
Den side hedder default.asp men der hvor brugeren indtaster sine data, ligger som en include fil i default.asp som hedder <!--#include file="include/menu_bruger.asp" -->

Det er menu_bruger.asp som har checkboxen og indtastningsfelterne.
Avatar billede justdoit Nybegynder
09. september 2002 - 17:14 #15
Hvaså er det ikke til at finde ud af :-)
Avatar billede benson Nybegynder
09. september 2002 - 20:30 #16
Hej Igen !

justdoit ! Jeg har lige kigget på det en gang til, og jeg må bakke ud.

Det kommer til at tage for lang tid for mig, og jeg har lige mit eget site jeg skal have op at stå !

Men systematikken i det jeg før har skrevet virker, for jeg bruger den selv.

Men jeg kan ikke holde styre på din logik (og den har vi jo alle heldigvis hver vores :-) af.). Det er bl.a. i menu_bruger hvor det ser ud som om at du er på vej med en løsning.

Skitser problemet op på et stykke papir og forløbet, så falder det hele på plads.

OAOut

Benson
Avatar billede justdoit Nybegynder
09. september 2002 - 22:07 #17
øv, så må jeg prøve et andet sted på eksperten! Men tak fordi du prøvede.
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