11. februar 2006 - 16:28Der er
7 kommentarer og 1 løsning
Loginfunktion med ASP+MySQL
Hej
Jeg har en database med ID, Brugernavn og Password (MySQL). Jeg har også en loginfunktion (sessions), men den bruger et fælles password og ikke dem i min database, hvordan laver jeg det om.
Login.asp: <% ' Tjek om login og password er korrekte If Request.Form("login") = "xxxx" AND Request.Form("password") = "xxxxxxxx" Then
' Hvis korrekt sættes session til JA Session("login") = "JA" Session.Timeout = 30 Response.Write "<h1>Du er nu logget korrekt ind</h1>" Response.Redirect "start.asp"
Else
' Hvis forkert sættes ingen session til NEJ 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 %>
Protect.asp: <% ' Hvis brugeren ikke er logget rigtigt på ' sendes han/hun direkte til formularen If Session("login") <> "JA" Then Response.Redirect "/login.asp" End If %>
strSQL = "Select * From users WHERE brugernavn = '" & Replace(Request.Form("login"),"'","''") & "'" Set rs = Conn.Execute(strSQL)
if not rs.eof then if rs("password") = Replace(Request.Form("password"),"'","''") then loginTjek = true else loginTjek = false else 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
Jeg får en fejl selvom jeg fjerner den ene af dem:
Expected 'End' /Login/login.asp, line 27, column 24
filen ser nu sådan ud:
<% Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=mydb3.surf-town.net;DATABASE=xxxx_xxxx;UID=xxxxx_xxxxx;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 loginTjek = true else 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 not rs.eof then if rs("password") = Replace(Request.Form("password"),"'","''") then loginTjek = true else loginTjek = false end if else loginTjek = false end if
og nej, det er ikke en fejl med de 2 'loginTjek = false' :
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
Hehe, genial er så meget sagt. Men godt du kunne få det til at virke... skal du have lavet en "husk mig" funktion, så skal du i gang med cookies. Læs mere her: http://www.html.dk/tutorials/asp/lektion13.asp
Og tak for point :o)
Synes godt om
Ny brugerNybegynder
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.