Avatar billede kimborg Nybegynder
11. februar 2006 - 18:53 Der er 33 kommentarer og
1 løsning

Husk mig funktion til eksisterende loginsystem

Hejsa

Har et loginsystem som virker perfekt, men kunne godt tænke mig en "Husk mig" funktion, skal kun huske oplysningerne og ikke selv logge ind.

Mit loginsystem:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=xxxx_brodre;UID=xxxx_xxxx;PWD=xxxxxxxx;"

strSQL = "Select * From Brodre WHERE brugernavn = '" & Replace(Request.Form("login"),"'","''") & "'"
Set rs = Conn.Execute(strSQL)

if not rs.eof then
  if rs("password") = Replace(Request.Form("password"),"'","''") then
    ' du må godt logge ind, fordi dit brugernavn og kodeord passer sammen
    loginTjek = true
  else
    'du må ikke logge ind, hvis brugernavnet ikke passer sammen med kodeordet
    loginTjek = false
  end if
else
  'du må ikke logge ind, hvis dit brugernavn ikke findes
  loginTjek = false
end if

if loginTjek = true then
  Session("login") = "JA"
  Session.Timeout = 30
  Response.Write "<h1>Du er nu logget korrekt ind</h1>"
  Response.Redirect "start.asp"
else
  Session("login") = "NEJ"
  Session.Timeout = 30
  Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
  Response.Write "<p><a href='default.asp'>Klik her for at prøve igen</a></p>"
end if
%>
Avatar billede michaelfp Nybegynder
11. februar 2006 - 19:20 #1
Du kan jo gemme brugernavn og password i cookies, hvis f.eks brugeren klikker en checkbox og derefter referere til cookies.
ex.
    If Request("remember_password") = "1" Then
        Response.Cookies("username") = Request.Form("login")
        Response.Cookies("username").Expires = DateAdd("y", 1, Now())
        Response.Cookies("password") = Request.Form("password")
        Response.Cookies("password").Expires = DateAdd("y", 1, Now())
        End if

og cookie værdierne hentes med:

        ditlogin = Request.Cookies("username")
        ditpassword = Request.Cookies("password")
Avatar billede kimborg Nybegynder
11. februar 2006 - 19:30 #2
Jeg er helt grøn, hvad cookies angår, så skal følgende bare indsættes lige inden afsnittet med sessions:

    If Request("remember_password") = "1" Then
        Response.Cookies("username") = Request.Form("login")
        Response.Cookies("username").Expires = DateAdd("y", 1, Now())
        Response.Cookies("password") = Request.Form("password")
        Response.Cookies("password").Expires = DateAdd("y", 1, Now())
        End if

Og hvordan henter jeg cookieværdierne?
Avatar billede kimborg Nybegynder
11. februar 2006 - 20:27 #3
Har nu følgende filer:

Selv loginsiden:

<%
if lcase(Request.Cookies("login")("gem")) = "ja" then
  navn = Request.Cookies("login")("brugernavn")
  pass = Request.Cookies("login")("password")
else
  navn = ""
  pass = "Password"
end if
%>

<form method="post" action="login.asp">
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="login"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password"></td>
</tr>
<tr>
  <td></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>
<form name="huskmig">
<table border="0">
<tr>
  <td align="left" width="270px"><input type="checkbox" name="gem" value="ja">&nbsp;<i>Husk login</i></td>
</tr>
</table>
</form>

og siden som checker om login er gyldigt:

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=xxxx_brodre;UID=xxxx_xxxx;PWD=xxxxxxxxxx;"

strSQL = "Select * From Brodre WHERE brugernavn = '" & Replace(Request.Form("login"),"'","''") & "'"
Set rs = Conn.Execute(strSQL)

if not rs.eof then
  if rs("password") = Replace(Request.Form("password"),"'","''") then
    ' du må godt logge ind, fordi dit brugernavn og kodeord passer sammen
    loginTjek = true
  else
    'du må ikke logge ind, hvis brugernavnet ikke passer sammen med kodeordet
    loginTjek = false
  end if
else
  'du må ikke logge ind, hvis dit brugernavn ikke findes
  loginTjek = false
end if

if loginTjek = true then
  Session("login") = "JA"
  Session.Timeout = 30
  Response.Write "<h1>Du er nu logget korrekt ind</h1>"
  Response.Redirect "start.asp"
else
  Session("login") = "NEJ"
  Session.Timeout = 30
  Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
  Response.Write "<p><a href='default.asp'>Klik her for at prøve igen</a></p>"
end if

if Request.Form("huskmig") <> "" then
  'Gem cookien
  Response.Cookies("login")("brugernavn") = Request.Form("login")
  Response.Cookies("login")("password") = Request.Form("password")
  Response.Cookies("login")("gem") = "ja"
  Response.Cookies("login").Expires = Date+365
else
  'Slet evt cookie
  if Request.Cookies("login")("brugernavn") <> "" then
    Response.Cookies("login")("brugernavn") = " XX "
    Response.Cookies("login")("password") = "XX"
    Response.Cookies("login")("gem") = "nej"
    Response.Cookies("login").Expires = Date-365
  end if
end if
%>

Nogle idéer anyone???
Avatar billede michaelfp Nybegynder
11. februar 2006 - 20:50 #4
Du skal blot skrive
Request.Cookies("brugernavn") og
Response.Cookies"password")
ikke
Response.Cookies("login")("password")

så burde det virker!!
Avatar billede kimborg Nybegynder
11. februar 2006 - 21:26 #5
Hmm... virker stadig ikke, kan det noget med mine forms??

<form method="post" action="login.asp">
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="login"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password"></td>
</tr>
<tr>
  <td></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>
<form name="huskmig">
<table border="0">
<tr>
  <td align="left" width="270px"><input type="checkbox" name="gem" value="ja">&nbsp;<i>Husk login</i></td>
</tr>
</table>
</form>
Avatar billede michaelfp Nybegynder
11. februar 2006 - 21:33 #6
prøv med

<form method="post" action="login.asp">
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="login"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password"></td>
</tr>
<tr>
  <td></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
<tr>
  <td align="left" width="270px"><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
</tr>
</table>
</form>
Avatar billede kimborg Nybegynder
11. februar 2006 - 22:00 #7
Virker stadig ikke, har prøvet at ændre:

<input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>

til

<input type="checkbox" name="huskmig" value="huskmig">&nbsp;<i>Husk login</i></td>

<input type="checkbox" name="huskmig" value="gem">&nbsp;<i>Husk login</i></td>

<input type="checkbox" name="huskmig" value="login">&nbsp;<i>Husk login</i></td>

Men ingen af dem virker...

Flere foreslag?
Avatar billede michaelfp Nybegynder
11. februar 2006 - 22:34 #8
hvad er det der ikke virker?
Avatar billede kimborg Nybegynder
11. februar 2006 - 23:17 #9
Den husker ikke mit login, men logger ellers fint ind, ville bare have at når jeg besøger siden en anden gang har siden selv udfyldt brugernavn og password
Avatar billede michaelfp Nybegynder
12. februar 2006 - 10:22 #10
Jeg foreslår du holder koden så overskuelig som muligt. Med ex. fra 11/02-2006 21:33:46 ligger den nye knap i samme form som det øvrige.

Hvis HUSKMIg submittes burde du kunne lave
If (Request.form("huskmig") = "ja") Then
Response.Cookies("username") = Request.Form("login")
Response.Cookies("username").Expires = DateAdd("y", 1, Now())
Response.Cookies("password") = Request.Form("password")
Response.Cookies("password").Expires = DateAdd("y", 1, Now())
End if

Prøv evt. at lave en response.write for at se om den køre koden
i If (Request.form("huskmig") = "ja") Then
Avatar billede michaelfp Nybegynder
12. februar 2006 - 10:24 #11
P.S Jeg når ikke at hjælpe mere idag, så jeg håber du får det løst eller at en anden på eksperten vil hjælpe videre (eller vi kan fortsætte en anden dag) :-)
Avatar billede kimborg Nybegynder
12. februar 2006 - 16:15 #12
Den ser ud til at gemme min cookie, men den vil ikke hente den igen på loginsiden, nogle som vil hjælpe??
Avatar billede michaelfp Nybegynder
13. februar 2006 - 17:58 #13
Hvis dine nye cookies gemmes godt nok, så bliver næste udfordring, at tilpasse login, så der chekkes på og der står noget i dine cookies - altså:

Din form skal initiere nogle variable som sættes lig dine cookies, hver gang sidem loades. Noget a la:

If Response.Cookies("username") <> "" Then
  Varuser = Response.cookies("username")
  Varpassword = Response.cookies("password")
Else
  varuser = ""
  Varpassword = ""
End if

Indholdet i <td width="170px"><input type="text" name="login"></td>
skal du tilføje
<td width="170px"><input type="text" name="login"> Value="<%varuser%>"</td>
Avatar billede kimborg Nybegynder
13. februar 2006 - 20:22 #14
Det gav en fejl med at automation is not supported eller noget i den dur.

Måske skulle jeg bare droppe det...

Tak for hjælpen ellers
Avatar billede michaelfp Nybegynder
14. februar 2006 - 19:52 #15
Okay - nogen gange tror man, at alle andre ved det samme som en selv!

Mit ex af 13/02-2006 17:58:44

Skulle være:
Din form skal initiere nogle variable som sættes lig dine cookies, hver gang sidem loades. Noget a la:

If Request.Cookies("username") <> "" Then
  Varuser = Request.cookies("username")
  Varpassword = Request.cookies("password")
Else
  varuser = ""
  Varpassword = ""
End if

Indholdet i <td width="170px"><input type="text" name="login"></td>
skal du tilføje
<td width="170px"><input type="text" name="login"> Value="<%varuser%>"</td>

Håber det giver mening og hvis dine cookies bliver gemt, som du hævder, så får du værdierne med ovennævnte!
Avatar billede kimborg Nybegynder
14. februar 2006 - 21:10 #16
Fatter ikke hvad der er galt, men dette giver denne fejl:

Error Type:
Sun ONE ASP VBScript runtime (0x800A01F4)
'Varuser' is undefined
/login/default.asp, line 21

Har prøvet at rette flere ting, men får samme fejl...

Min side som indeholder loginform:

<%
If Request.Cookies("brugernavn") <> "" Then
  Varuser = Request.cookies("brugernavn")
  Varpassword = Request.cookies("password")
Else
  varuser = ""
  Varpassword = ""
End if

%>
<!--#include file="template_login.html"-->
<div class="content_center">
<br>
<br>
<br>
<br>
<form method="post" action="login.asp">
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="brugernavn" Value="<%varuser%>"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password"></td>
</tr>
<tr>
  <td><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>
Avatar billede michaelfp Nybegynder
15. februar 2006 - 12:16 #17
Du skal erklære de to variabler

Dim varuser, varpassword
Avatar billede kimborg Nybegynder
15. februar 2006 - 12:59 #18
Jeg er glad for du gider hjælpe mig, men jeg er nybegynder på ASP og cookies, så du må undskylde, men det du skriver giver for mig ingen mening, du må meget gerne skrive helt præcis hvad jeg skal ændre, ellers fatter jeg minus ;O(
Avatar billede michaelfp Nybegynder
15. februar 2006 - 19:05 #19
prøv lige at sende hele scriptet fra siden
Avatar billede kimborg Nybegynder
15. februar 2006 - 19:35 #20
Håber du kan hjælpe mig med dette.

default.asp:

<%
If Request.Cookies("brugernavn") <> "" Then
  brugernavn = Request.cookies("brugernavn")
  password = Request.cookies("password")
Else
  varuser = ""
  Varpassword = ""
End if
%>
<!--#include file="template_login.html"-->
<div class="content_center">
<br>
<br>
<br>
<br>
<form method="post" action="login.asp">
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="brugernavn"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password"></td>
</tr>
<tr>
  <td><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>

</div>
</div>
</body>
</html>


login.asp:

<!--#include file="template_fejl.html"-->
<div class="content_center">
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=XXXX_brodre;UID=XXXX_XXXX;PWD=XXXXX;"

strSQL = "Select * From Brodre WHERE brugernavn = '" & Replace(Request.Form("brugernavn"),"'","''") & "'"
Set rs = Conn.Execute(strSQL)

if not rs.eof then
  if rs("password") = Replace(Request.Form("password"),"'","''") then
    ' du må godt logge ind, fordi dit brugernavn og kodeord passer sammen
    loginTjek = true
  else
    'du må ikke logge ind, hvis brugernavnet ikke passer sammen med kodeordet
    loginTjek = false
  end if
else
  'du må ikke logge ind, hvis dit brugernavn ikke findes
  loginTjek = false
end if

if loginTjek = true then
  Session("login") = "JA"
  Session.Timeout = 30
  Response.Redirect "start.asp"
else
  Session("login") = "NEJ"
  Session.Timeout = 30
  Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
  Response.Write "<p><a href='default.asp'>Klik her for at prøve igen</a></p>"
end if

If (Request.form("huskmig") = "ja") Then
  'Gem cookien
  Response.Cookies("brugernavn") = Request.Form("brugernavn")
  Response.Cookies("brugernavn").Expires = DateAdd("y", 1, Now())
  Response.Cookies("password") = Request.Form("password")
  Response.Cookies("password").Expires = DateAdd("y", 1, Now())
end if
%>
</div>
</div>
</body>
</html>
Avatar billede michaelfp Nybegynder
15. februar 2006 - 19:46 #21
Prøv med følgende (det skulle i første omgang fjerne den aktuelle fejl)

<%
If Request.Cookies("brugernavn") <> "" Then
  varuser = Request.cookies("brugernavn")
  varpassword = Request.cookies("password")
Else
  varuser = ""
  Varpassword = ""
End if
%>
<!--#include file="template_login.html"-->
<div class="content_center">
<br>
<br>
<br>
<br>
<form method="post" action="login.asp">
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="brugernavn" value="<%=varuser%>"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password" value="<%=varpassword%>"></td>
</tr>
<tr>
  <td><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>

</div>
</div>
</body>
</html>


login.asp:

<!--#include file="template_fejl.html"-->
<div class="content_center">
<%
Dim Varuser, Varpassword

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=XXXX_brodre;UID=XXXX_XXXX;PWD=XXXXX;"

strSQL = "Select * From Brodre WHERE brugernavn = '" & Replace(Request.Form("brugernavn"),"'","''") & "'"
Set rs = Conn.Execute(strSQL)

if not rs.eof then
  if rs("password") = Replace(Request.Form("password"),"'","''") then
    ' du må godt logge ind, fordi dit brugernavn og kodeord passer sammen
    loginTjek = true
  else
    'du må ikke logge ind, hvis brugernavnet ikke passer sammen med kodeordet
    loginTjek = false
  end if
else
  'du må ikke logge ind, hvis dit brugernavn ikke findes
  loginTjek = false
end if

if loginTjek = true then
  Session("login") = "JA"
  Session.Timeout = 30
  Response.Redirect "start.asp"
else
  Session("login") = "NEJ"
  Session.Timeout = 30
  Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
  Response.Write "<p><a href='default.asp'>Klik her for at prøve igen</a></p>"
end if

If (Request.form("huskmig") = "ja") Then
  'Gem cookien
  Response.Cookies("brugernavn") = Request.Form("brugernavn")
  Response.Cookies("brugernavn").Expires = DateAdd("y", 1, Now())
  Response.Cookies("password") = Request.Form("password")
  Response.Cookies("password").Expires = DateAdd("y", 1, Now())
end if
%>
</div>
</div>
</body>
</html>
Avatar billede kimborg Nybegynder
15. februar 2006 - 19:53 #22
Yes, så er fejlen væk ihvertfald, men hvordan får jeg så den til at huske mit login?
Avatar billede michaelfp Nybegynder
15. februar 2006 - 20:24 #23
Gemmes brugernavn og password hvis du markere checkboxen?
Som jeg lige læser din kode, så burde du, hvis ellers cookies gemmer de rigtige værdier, bare kunne klikke login!
Avatar billede kimborg Nybegynder
15. februar 2006 - 21:17 #24
Det virker stadig ikke, fatter ikke hvad der er galt...

hvordan ser jeg om den gemmer cookies rigtigt?
Avatar billede michaelfp Nybegynder
15. februar 2006 - 22:21 #25
Jeg ser først nu, at det er to sider!!

Prøv følgende

default.asp:

<%
Dim Varuser,Varpassword
%>
<!--#include file="template_login.html"-->
<div class="content_center">
<br>
<br>
<br>
<br>
<form method="post" action="login.asp">
<%
If Request.Cookies("brugernavn") <> "" Then
  varuser = Request.cookies("brugernavn")
  varpassword = Request.cookies("password")
Else
  If (Request.form("huskmig") = "ja") Then
    'Gem cookien
    Response.Cookies("brugernavn") = Request.Form("brugernavn")
    Response.Cookies("brugernavn").Expires = DateAdd("y", 1, Now())
    Response.Cookies("password") = Request.Form("password")
    Response.Cookies("password").Expires = DateAdd("y", 1, Now())
  Else
    varuser = ""
    Varpassword = ""
  End if
End if
%>
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="brugernavn" value="<%=varuser%>"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password" value="<%=varpassword%>"></td>
</tr>
<tr>
  <td><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>

</div>
</div>
</body>
</html>


login.asp:

<!--#include file="template_fejl.html"-->
<div class="content_center">
<%

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=XXXX_brodre;UID=XXXX_XXXX;PWD=XXXXX;"

strSQL = "Select * From Brodre WHERE brugernavn = '" & Replace(Request.Form("brugernavn"),"'","''") & "'"
Set rs = Conn.Execute(strSQL)

if not rs.eof then
  if rs("password") = Replace(Request.Form("password"),"'","''") then
    ' du må godt logge ind, fordi dit brugernavn og kodeord passer sammen
    loginTjek = true
  else
    'du må ikke logge ind, hvis brugernavnet ikke passer sammen med kodeordet
    loginTjek = false
  end if
else
  'du må ikke logge ind, hvis dit brugernavn ikke findes
  loginTjek = false
end if

if loginTjek = true then
  Session("login") = "JA"
  Session.Timeout = 30
  Response.Redirect "start.asp"
else
  Session("login") = "NEJ"
  Session.Timeout = 30
  Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
  Response.Write "<p><a href='default.asp'>Klik her for at prøve igen</a></p>"
end if

%>
</div>
</div>
</body>
</html>
Avatar billede kimborg Nybegynder
15. februar 2006 - 22:35 #26
Jeg har præcis som du har skrevet men det virker stadig ikke, har prøvet at slette gamle cookies og prøve igen, men virker heller ikke... fatter det bare ikke :o(
Avatar billede michaelfp Nybegynder
15. februar 2006 - 22:42 #27
Kan du logge på, hvis du skriver brugernavn og password?
Avatar billede kimborg Nybegynder
15. februar 2006 - 22:46 #28
ja, det virker helt fint.
Avatar billede michaelfp Nybegynder
15. februar 2006 - 22:52 #29
Prøv at rette default.asp til: (nu tester vi)

<%
Dim Varuser,Varpassword
%>
<!--#include file="template_login.html"-->
<div class="content_center">
<br>
<br>
<br>
<br>
<form method="post">
<%
If Request.Cookies("brugernavn") <> "" Then
  varuser = Request.cookies("brugernavn")
  varpassword = Request.cookies("password")
Else
  If (Request.form("huskmig") = "ja") Then
    'Gem cookien
    Response.Cookies("brugernavn") = Request.Form("brugernavn")
    Response.Cookies("brugernavn").Expires = DateAdd("y", 1, Now())
    Response.Cookies("password") = Request.Form("password")
    Response.Cookies("password").Expires = DateAdd("y", 1, Now())
  Else
    varuser = ""
    Varpassword = ""
  End if
End if
%>
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="brugernavn" value="<%=varuser%>"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password" value="<%=varpassword%>"></td>
</tr>
<tr>
  <td><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
  <td><input type="reset" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" value="Login"></td>
</tr>
</table>
</form>
<%response.write Response.Cookies("brugernavn")%>
</div>
</div>
</body>
</html>

indtast et brugernavn og password, klik i huskmig og klik login
Luk siden og åben den igen. Står der så ikke brugernavn og password automatisk?
Avatar billede kimborg Nybegynder
15. februar 2006 - 22:59 #30
Vil ikke acceptere denne linie:

<%response.write Response.Cookies("brugernavn")%>

"Error Type:
Response object, ASP 0106 (0x80020005)
An unhandled data type was encountered.
/login/default.asp, line 43"
Avatar billede michaelfp Nybegynder
15. februar 2006 - 23:03 #31
Sorry linien skal være:
<%response.write Request.Cookies("brugernavn")%>
Avatar billede kimborg Nybegynder
15. februar 2006 - 23:11 #32
Mystisk, nu husker den brugernavn og password, men skriver brugernavnet nedenunder på samme side og man kan ikke logge ind....??
Avatar billede michaelfp Nybegynder
15. februar 2006 - 23:32 #33
Det er ikke mystisk!
med <%response.write Request.Cookies("brugernavn")%> beder vi om at få vist indholdet af cookien brugernavn!

Problemet i din kode er, at du blander nogle ting sammen!

default skal se således ud:

<%
Dim Varuser,Varpassword
%>
<!--#include file="template_login.html"-->
<div class="content_center">
<br>
<br>
<br>
<br>
<form method="post">
<%
Session("pw") = Request.form("password")
If (Request.form("huskmig") = "ja") Then
  'Gem cookien
  Response.Cookies("brugernavn") = Request.Form("brugernavn")
  Response.Cookies("brugernavn").Expires = DateAdd("y", 1, Now())
  Response.Cookies("password") = Request.Form("password")
  Response.Cookies("password").Expires = DateAdd("y", 1, Now())
End if
If Request.Cookies("brugernavn") <> "" Then
  varuser = Request.cookies("brugernavn")
  varpassword = Request.cookies("password")
Else
  varuser = ""
  Varpassword = ""
End if
If (Request.form("nulstil") = "Nulstil") Then
  varuser = ""
  Varpassword = ""
  Response.Cookies("brugernavn") = ""
  Response.Cookies("password") = ""
End if
If (Request.form("login") = "Login") Then
  Session("pw") = Request.form("password")
  Response.Redirect "login.asp?un=" & request.form("brugernavn")
End if
%>
<table border="0">
<tr>
  <td><p>Brugernavn:</td>
  <td width="170px"><input type="text" name="brugernavn" value="<%=varuser%>"></td>
</tr>
<tr>
  <td><p>Password:</td>
  <td width="170px"><input type="password" name="password" value="<%=varpassword%>"></td>
</tr>
<tr>
  <td><input type="checkbox" name="huskmig" value="ja">&nbsp;<i>Husk login</i></td>
  <td><input type="submit" name="nulstil" value="Nulstil">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="submit" name="login" value="Login"></td>
</tr>
</table>

</form>

</div>
</div>
</body>
</html>

og login skal se således ud:


<!--#include file="template_fejl.html"-->
<div class="content_center">
<%

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=XXXX_brodre;UID=XXXX_XXXX;PWD=XXXXX;"

strSQL = "Select * From Brodre WHERE brugernavn = '" & request("un") & "'"
Set rs = Conn.Execute(strSQL)

if not rs.eof then
  if rs("password") = session("pw") then
    ' du må godt logge ind, fordi dit brugernavn og kodeord passer sammen
    loginTjek = true
  else
    'du må ikke logge ind, hvis brugernavnet ikke passer sammen med kodeordet
    loginTjek = false
  end if
else
  'du må ikke logge ind, hvis dit brugernavn ikke findes
  loginTjek = false
end if

if loginTjek = true then
  Session("login") = "JA"
  Session.Timeout = 30
  Response.Redirect "start.asp"
else
  Session("login") = "NEJ"
  Session.Timeout = 30
  Response.Write "<h1>Du er IKKE logget korrekt ind</h1>"
  Response.Write "<p><a href='default.asp'>Klik her for at prøve igen</a></p>"
end if

%>
</div>
</div>
</body>
</html>
Avatar billede kimborg Nybegynder
15. februar 2006 - 23:39 #34
Perfekt! ;O)

Det hele virker nu, kan godt se jeg ikke var helt tæt på ;O(

Det er bare super, mange tak!
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