29. marts 2004 - 16:02Der er
26 kommentarer og 1 løsning
autologin husker brugernavn og pass
Den husker password og brugernavn. men du skal trykke på enter knappen før den logger ind.. kan man fixe så den ikke gør ud af det jeg har her ?
siden hvor man logger ind --->
<% if lcase(Request.Cookies("login")("gem")) = "ja" then navn = Request.Cookies("login")("brugernavn") pass = Request.Cookies("login")("password") else navn = "Brugernavn" pass = "password" end if %>
<form method="post" action="login.asp"> <input type="hidden" name="send1" value="send1"> Brugernavn:<br> <input name="FBruger" size="14" id=Login style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" onFocus="this.value=''" value="<%=navn%>"> Password:<br> <input type="password" name="FPass" size="14" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" id=Password value="<%=pass%>" onFocus="this.value=''"><br> <% response.Write request.QueryString("loginskriv") %><br> <INPUT style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" type=submit value=Enter!> <br> <input type="checkbox" value="gemmig" name="huskmig">Husk mig<br> <a href="default.asp?id=opretbruger">Opret bruger</a> </form>
login.asp --->
<% if request("send1") <> "" then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Database/brugerdatabasen.mdb") Conn.Open DSN
Dim Bruger, Pass Bruger = Trim(Request.Form("FBruger")) Pass = Trim(Request.Form("FPass"))) SQL = "SELECT * FROM Tuser WHERE (FBruger = '"& Bruger &"')" set rs = conn.execute(SQL) 'Undersøg om det er det rigtigt Password og send til loginsiden hvis det er forkert ellers sender den til Lektiesiden. If rs.EOF Then response.redirect "default.asp?loginskriv=Forkert brugernavn" elseif rs("FPass") = pass Then if rs("godkendt") = "2" Then if rs.fields("brugerlevel") = "1" then session("loginoki") = Bruger Session("forumbruger") = "Member" elseif rs.fields("brugerlevel") = "2" then session("loginoki") = Bruger Session("forumadmin") = "Forum admin" Session("kanaltiverden") = "daadminnegerpikneger" Session("ID") = rs("id") elseif rs.fields("brugerlevel") = "3" then session("loginoki") = Bruger Session("daadminbruger") = "über admin" Session("kanaltiverden") = "daadminnegerpikneger" Session("ID") = rs("id") end if if Request.Form("huskmig") = "gemmig" then 'Gem cookien Response.Cookies("login")("brugernavn") = Request.Form("FBruger") Response.Cookies("login")("password") = Request.Form("FPass") Response.Cookies("login")("gem") = "ja" Response.Cookies("login").Expires = Date+365 else Response.Cookies("login")("brugernavn") = " XX " Response.Cookies("login")("password") = "XX" Response.Cookies("login")("gem") = "nej" Response.Cookies("login").Expires = Date-365 end if Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Database/brugerdatabasen.mdb") Conn.Open DSN sql = "UPDATE Tuser set Sonline = '"&now()&"' where FBruger = '" & session("loginoki") & "'" set rs = conn.execute(sql) set rs = nothing response.redirect "default.asp?id=bruger1&bruger="&Bruger&"" Else response.redirect "default.asp?loginskriv=Brugeren er ikke aktiveret" end if
Else response.redirect "default.asp?loginskriv=Forkert password" end if end if %>
<% if lcase(Request.Cookies("login")("gem")) = "ja" then navn = Request.Cookies("login")("brugernavn") pass = Request.Cookies("login")("password") dim script : script="<script type=""text/javascript"">document.forms[0].submit()</script>" else navn = "Brugernavn" pass = "password" end if %>
<form method="post" action="login.asp"> <input type="hidden" name="send1" value="send1"> Brugernavn:<br> <input name="FBruger" size="14" id=Login style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" onFocus="this.value=''" value="<%=navn%>"> Password:<br> <input type="password" name="FPass" size="14" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" id=Password value="<%=pass%>" onFocus="this.value=''"><br> <% response.Write request.QueryString("loginskriv") %><br> <INPUT style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" type=submit value=Enter!> <br> <input type="checkbox" value="gemmig" name="huskmig">Husk mig<br> <a href="default.asp?id=opretbruger">Opret bruger</a> </form> <%=script%>
er den hurtige løsning, kræver at brugeren ikke har slået javascript fra
<% if lcase(Request.Cookies("login")("gem")) = "ja" then navn = Request.Cookies("login")("brugernavn") pass = Request.Cookies("login")("password") Server.Transfer "login.asp" else navn = "Brugernavn" pass = "password" end if %>
<form method="post" action="login.asp"> <input type="hidden" name="send1" value="send1"> Brugernavn:<br> <input name="FBruger" size="14" id=Login style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" onFocus="this.value=''" value="<%=navn%>"> Password:<br> <input type="password" name="FPass" size="14" style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" id=Password value="<%=pass%>" onFocus="this.value=''"><br> <% response.Write request.QueryString("loginskriv") %><br> <INPUT style="BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; BACKGROUND: #cccccc; FONT: bold 10px verdana; BORDER-LEFT: black 1px solid; BORDER-BOTTOM: black 1px solid" type=submit value=Enter!> <br> <input type="checkbox" value="gemmig" name="huskmig">Husk mig<br> <a href="default.asp?id=opretbruger">Opret bruger</a> </form>
login.asp --->
<% if navn <> "" and pass <> "" Then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Database/brugerdatabasen.mdb") Conn.Open DSN
Dim Bruger, Pass Bruger = navn Pass = pass SQL = "SELECT * FROM Tuser WHERE (FBruger = '"& Bruger &"')" set rs = conn.execute(SQL) 'Undersøg om det er det rigtigt Password og send til loginsiden hvis det er forkert ellers sender den til Lektiesiden. If rs.EOF Then Response.Cookies("login")("gem") = "" response.redirect "default.asp?loginskriv=Forkert brugernavn" Else if rs("FPass") = pass Then if rs("godkendt") = "2" Then if rs.fields("brugerlevel") = "1" then session("loginoki") = Bruger Session("forumbruger") = "Member" elseif rs.fields("brugerlevel") = "2" then session("loginoki") = Bruger Session("forumadmin") = "Forum admin" Session("kanaltiverden") = "daadminnegerpikneger" Session("ID") = rs("id") elseif rs.fields("brugerlevel") = "3" then session("loginoki") = Bruger Session("daadminbruger") = "über admin" Session("kanaltiverden") = "daadminnegerpikneger" Session("ID") = rs("id") end if End If End If
if request("send1") <> "" then Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Database/brugerdatabasen.mdb") Conn.Open DSN
Dim Bruger, Pass Bruger = Trim(Request.Form("FBruger")) Pass = Trim(Request.Form("FPass"))) SQL = "SELECT * FROM Tuser WHERE (FBruger = '"& Bruger &"')" set rs = conn.execute(SQL) 'Undersøg om det er det rigtigt Password og send til loginsiden hvis det er forkert ellers sender den til Lektiesiden. If rs.EOF Then response.redirect "default.asp?loginskriv=Forkert brugernavn" elseif rs("FPass") = pass Then if rs("godkendt") = "2" Then if rs.fields("brugerlevel") = "1" then session("loginoki") = Bruger Session("forumbruger") = "Member" elseif rs.fields("brugerlevel") = "2" then session("loginoki") = Bruger Session("forumadmin") = "Forum admin" Session("kanaltiverden") = "daadminnegerpikneger" Session("ID") = rs("id") elseif rs.fields("brugerlevel") = "3" then session("loginoki") = Bruger Session("daadminbruger") = "über admin" Session("kanaltiverden") = "daadminnegerpikneger" Session("ID") = rs("id") end if if Request.Form("huskmig") = "gemmig" then 'Gem cookien Response.Cookies("login")("brugernavn") = Request.Form("FBruger") Response.Cookies("login")("password") = Request.Form("FPass") Response.Cookies("login")("gem") = "ja" Response.Cookies("login").Expires = Date+365 else Response.Cookies("login")("brugernavn") = " XX " Response.Cookies("login")("password") = "XX" Response.Cookies("login")("gem") = "nej" Response.Cookies("login").Expires = Date-365 end if Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Database/brugerdatabasen.mdb") Conn.Open DSN sql = "UPDATE Tuser set Sonline = '"&now()&"' where FBruger = '" & session("loginoki") & "'" set rs = conn.execute(sql) set rs = nothing response.redirect "default.asp?id=bruger1&bruger="&Bruger&"" Else response.redirect "default.asp?loginskriv=Brugeren er ikke aktiveret" end if
Else response.redirect "default.asp?loginskriv=Forkert password" end if end if %>
i response.redirect "side.asp" skal "side.asp" *ikke* være login siden :-) Det skal bare være en eller anden side.. man skal jo ikke se login siden, hvis man er logget ind :-) prøv med forsiden i stedet..
Når man har skrevet korrekt brugernavn+kodeord, skal den checke om der er kryds i "huskmig". Hvis der *er* kryds i "huskmig", skal brugernavn+kodeord gemmes i cookie.
Det er *kun* hvis der er kryds i "huskmig", at der skal gemmes i cookie!
Nej, hvis der bruges res.redic "side.asp" (eller svr.trans) skal der ikke bruges: navn = Request.Cookies("login")("brugernavn") pass = Request.Cookies("login")("password")
Det giver jo ingen mening, at oprette nogle variabler, når man alligevel skifter side, hvor de så mistes :-)
1) ASP compiler siden. 2) Den requester 3) Hvis Den ser at der findes en cookie 3a) Den sender brugeren videre til login.asp 5) Den opbygger siden
den bygger aldrig formen for brugeren hvis den redirecter / transfer. Derfor hvis han brugere redirect, som ikke sender information med, SKAL han requeste variablernde igen. Transfer derimod sender variabler med til næste side.
Derfor virker det for ham hvis han requester variablerne igen.
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.