Avatar billede Slettet bruger
24. august 2004 - 18:48 Der er 13 kommentarer og
1 løsning

Logind script med "husk mig" og "log mig automatisk ind" funktion

Hejsa.

Jeg søger at script, ligesom her på Eksperten.dk (http://www.eksperten.dk/logind.phtml), med logind-scriptet "husk mig" og "log mig automatisk ind" funktionerne.
Avatar billede karsten_larsen Praktikant
24. august 2004 - 23:11 #1
Se dette: http://eksperten.dk/spm/278426

:-) karsten_larsen
Avatar billede Slettet bruger
25. august 2004 - 15:26 #2
karsten_larsen:
Ja, den kender jeg godt. Men jeg kan knagemig ikke finde ud af den.  :-(
Eagleeye hjap mig med et andet problem (http://www.eksperten.dk/spm/531888), og dér bad jeg ham om at kigge herind, netop pga. det gamle spørgsmål du også selv henviser til. Netop for at få ham til at hjælpe mig.

Til alle andre:
Hvis nogle ligger inde med et Logind-script med "husk mig" og "log mig automatisk ind" funktion, er jeg selvfølgelig stadig MEGET interesseret!  :-))
Avatar billede eagleeye Praktikant
25. august 2004 - 22:27 #3
Har du login, så kan man jo starte med at udvide det så der er []Husk mig og []Autologin mulighed. Det skal gemmen i en cookie sammen men bruger/password så man kan logge folk ind.
Avatar billede Slettet bruger
25. august 2004 - 22:41 #4
eagleeye:
Jeps, det er også det jeg ønsker mig.  :-)

Men forhåbentligt du gidder at tilrette og renskrive det script, du selv har uploadet tidligere? Og selvfølgelig med begge funktioner ("husk mig" og "log mig automatisk ind").  :-)
Jeg har prøvet at rode med det tidligere, men opgav til sidst. :-(

Evt. kan jeg jo bare tage udgangspunkt i den Access-database-opsætning du allerede har anvist til mig tidligere? Og så ellers bare tilføje de extra funktioner der skal til.
Tabel : nyhedsmail
id : autonummer
brugernavn : tekst
email : teskt
userpass : tekst
aktiv : tal  '0=ikke aktiv, 1 aktiv


Link:
http://eksperten.dk/spm/278426
Avatar billede Slettet bruger
25. august 2004 - 22:48 #5
eagleeye:
Det med databasen, var bare for at gøre det så let for dig som muligt.
Men hvis der er en anden og bedre måde at gøre det på (evt. med en ny tabel), er det intet problem for mig.  :-)
Avatar billede eagleeye Praktikant
25. august 2004 - 22:52 #6
Nej lad os bruge den tabel du har lavet det er ikke så mange stedet det skal rettes. Kigger lige på det. Først kommer login.asp siden.
Avatar billede eagleeye Praktikant
25. august 2004 - 23:06 #7
Du kan prøve at ligge dette kode ind i filen  login.asp
Men det meste af koden er til at gemme i og hente fra cookien.



<%
if Request.ServerVariables("REQUEST_METHOD") = "POST" then
  fhuskmig = Request.Form("huskmig")
  fautologin = Request.Form("autologin")
  if fautologin <> "" then
    Response.Cookies("login")("autologin") = "yes"
  else
    Response.Cookies("login")("autologin") = "no"
  end if
 
  if fhuskmig <> "" then
    Response.Cookies("login")("huskmig") = "yes"
  else
    Response.Cookies("login")("huskmig") = "no"
  end if
 
  Set Conn = Server.CreateObject("ADODB.Connection")
  Conn.Open "Data Source="& server.mappath("db5.mdb") & ";Provider=Microsoft.Jet.OLEDB.4.0;"
  Set rs = Server.CreateObject("ADODB.RecordSet")

  username = fixSring(Request.Form("username"))
  password = fixSring(Request.Form("password"))

  strSQL= "SELECT * FROM nyhedsmail WHERE aktiv = 1 AND (brugernavn = '" & username & "' AND userpass='" & password & "');"
  Set rs = Conn.Execute (strSQL)

  if not rs.EOF then
    if fhuskmig <> "" OR fautologin <> "" then
      Response.Cookies("login")("brugernavn") = username
      Response.Cookies("login")("password") = password
    end if
    session("loginOK") = "jada"
    session("brugerID") = rs("ID")
    session("brugernavn") = rs("brugernavn")
    Conn.Close
    Set Conn = Nothing
    'Ang hvor der skal redirectes hen når man er logget ind.
    Response.Redirect(rs("userpass")&".asp")
  end if

  if session("loginOK") = "jada" then session("loginOK") = ""
  Response.Redirect("login.asp")
end if
%>

<%
'Tjek om autologin skal slåes fra:
mode = Request.QueryString("mode")
if mode = "disauto" then
  Response.Cookies("login")("autologin") = "no"
 
  'Send tilbage til siden man kom eller udkommenter for at blive på login siden
  Response.Redirect(Request.ServerVariables("HTTP_REFERER")) 
end if
%>

<%
'Tjek om autologin er slået til. Hvis autologin er slået til kald incude filen autologin.asp som logger folk ind
autologin = Request.Cookies("login")("autologin")
if autologin = "yes" then
  'AUTOLOGIN.ASP findes ikke endnu erfor er den udkommenteret
%>
<%'  <!--#include file="autologin.asp"--> %>
<%
    'Ang hvor der skal redirectes hen når man er logget ind.
    Response.Write "Du valgte Autologin!"
    'Response.Redirect("tt_forum.asp")
end if

huskmig = Request.Cookies("login")("huskmig")
if huskmig = "yes" then
  brugernavn = Request.Cookies("login")("brugernavn")
  password = Request.Cookies("login")("password")
end if
%>
<html>
<head>
<title>Login</title>

<SCRIPT LANGUAGE="JavaScript">
function start(){
  document.login.username.focus();
}
</SCRIPT>

</head>

<body onload="start()" bgcolor="#EDEEDD">
<center>
<p>Velkommen til xxx, du kan nu logge ind:</p>

<table border="1">
<form method="post" action="login.asp" name="login">
  <tr><td>Brugernavn:</td><td><input name="username"
  <% if huskmig = "yes" then Response.Write " value=""" & brugernavn & """" %>
  ></td></tr>
  <tr><td>Password:</td><td><input type="password" name="password"
  <% if huskmig = "yes" then Response.Write " value=""" & password & """" %>
  ></td></tr>
  <tr><td colspan="2" align="center"><input type="submit" value="Login" name="Action"></td></tr>
  <tr><td><input type="checkbox" name="autologin">Auto login</td><td><input type="checkbox" name="huskmig"
  <% if huskmig = "yes" then Response.Write " CHECKED "%> >Husk mig</td></tr>
</form>
</table>
<br>
<a href="glemtpassword.asp">Jeg har glemt mit password.</a> | <a href="nybruger.asp">Opret ny bruger.</a>

</center>
</body>
</html>

<%
'Functioner som bruges i filen:
function fixSring(strInput)
  fixSring = replace(""&strInput,"'","")
end function
%>
Avatar billede eagleeye Praktikant
25. august 2004 - 23:20 #8
Der måske lige en lille ting som skal rettes:

  if fhuskmig <> "" then
    Response.Cookies("login")("huskmig") = "yes"
  else
    Response.Cookies("login")("huskmig") = "no"
  end if


Til dette så Expires sættes for cookien:

  if fhuskmig <> "" then
    Response.Cookies("login")("huskmig") = "yes"
  else
    Response.Cookies("login")("huskmig") = "no"
  end if
  Response.Cookies("login").Expires = Date+365
Avatar billede Slettet bruger
25. august 2004 - 23:25 #9
eagleeye:

Indtil videre ser det helt fint ud!!!
Dog har jeg ikke mulighed for at teste scriptet lige nu, men det vil jeg gøre som det allerførste i morgen tidlig. :-)

Dog kan jeg umiddelbart få øje på 2 ting:
1: Linie 28:   
if fhuskmig <> "" OR fautologin <> "" then   
Er det bare et par stavebøffer?

2: Linie 61, 62 og 63:
Uploader du include-filen "autologin.asp", eller har jeg bare misforstået noget?
Avatar billede eagleeye Praktikant
25. august 2004 - 23:33 #10
1. Nej det ikke en stavebøf det ganske bevidst :)

2. Jo det rigtigt den kommre her. Så kan du udkommentere så den includer autologin.asp filen


<%
'Tjek om autologin cookie er gemt samt tjek man ikke er logget ind
if Request.Cookies("login")("autologin") = "yes" and session("loginOK") <> "jada" then

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Data Source="& server.mappath("db5.mdb") & ";Provider=Microsoft.Jet.OLEDB.4.0;"
Set rs = Server.CreateObject("ADODB.RecordSet")

username = replace(Request.Cookies("login")("brugernavn"),"'","")
password = replace(Request.Cookies("login")("password"),"'","")

strSQL= "SELECT * FROM nyhedsmail WHERE aktiv = 1 AND (brugernavn = '" & username & "' AND userpass='" & password & "');"
Set rs = Conn.Execute (strSQL)

if NOT rs.EOF then
  session("loginOK") = "jada"
  session("brugerID") = rs("ID")
  session("brugernavn") = rs("brugernavn")
else
  session("loginOK") = ""
  session("brugerID") = ""
  session("brugernavn") = ""
end if

Rs.Close
Set rs = Nothing
Conn.Close
Set Conn = Nothing

end if
%>
Avatar billede Slettet bruger
25. august 2004 - 23:42 #11
eagleeye:

Det ser helt perfekt ud! Jeg tester det i morgen tidlig! Glæder mig allerede!
Hvis du øjner lidt justeringer i script´ne, så bare kast dem herind, jeg chekker i morgen tidlig. :-)

På forhånd tak: extend
Avatar billede Slettet bruger
25. august 2004 - 23:46 #12
eagleeye:

Lige en ting mere: Læg venligst et svar, for hvis alting glider med script´ne som det skal i morgen tidlig, kan jeg tildele dig points med det samme.  :-)

På forhånd tak: extend
Avatar billede eagleeye Praktikant
26. august 2004 - 00:10 #13
Ok her svar :)
Avatar billede Slettet bruger
17. november 2004 - 16:07 #14
Hejsa igen, eagleeye.

Jeps, efter lidt tumult med en ny ADSL-forbindelse er jeg online igen!

Her er accepten af dit svar og dermed dine velfortjente points!

Igen: Tak for hjælpen!
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