13. februar 2005 - 01:05
Der er
6 kommentarer og 1 løsning
Login probs
Expected 'Then' /admin/login.asp, line 69 If Request.Form("login") = " & rs("username") & " AND Request.Form("password") = " & rs("password") Then -----------------------------------^ koden ser sådan ud: <% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/data.mdb") Conn.Open DSN strSQL = "Select * From artikel" If Request.Form("login") = " & rs("username") & " AND Request.Form("password") = " & rs("password") 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.Write "<p><a href='dokument.asp'>Link til beskyttet fil</a></p>" 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='dokument.asp'>Link til beskyttet fil</a></p>" End If Conn.Close Set Conn = Nothing %>
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
13. februar 2005 - 01:15
#1
Den kodelinie er heller ikke gyldig syntax. Prøv med If Request.Form("login") = rs("username") AND Request.Form("password") = rs("password") Then og så skal du nok også lige huske at afvikle din sql. Hvis du har flere brugere i databasen, skal du også have en "where"-betingelse på login = Request.Form("login") login = Replace(login, "'", "''") 'forhindrer nogen i at luske sig igennem dit system strSQL = "Select * From artikel where username='" & login & "'" Set rs = Conn.Execute(strSQL)
13. februar 2005 - 01:17
#2
OG du skal huske at kontrollere at rs.EOF ikke er True inden du laver ovenstående if-sætning
13. februar 2005 - 01:24
#3
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/data.mdb") Conn.Open DSN strSQL = "Select * From login where username='" & login & "'" Set rs = Conn.Execute(strSQL) If Request.Form("login") = rs("username") AND Request.Form("password") = rs("password") Then login = Request.Form("login") login = Replace(login, "'", "''") ' Hvis korrekt sættes session til JA Session("login") = "JA" Session.Timeout = 30 Response.Write "<h1>Du er nu logget korrekt ind</h1>" Response.Write "<p><a href='dokument.asp'>Link til beskyttet fil</a></p>" 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='dokument.asp'>Link til beskyttet fil</a></p>" End If Conn.Close Set Conn = Nothing %> ???
13. februar 2005 - 01:41
#4
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/data.mdb") Conn.Open DSN strSQL = "Select * From login where username='" & login & "'" Set rs = Conn.Execute(strSQL) fundet = false While NOT rs.EOF OR NOT fundet If Request.Form("login") = rs("username") AND Request.Form("password") = rs("password") Then login = Request.Form("login") login = Replace(login, "'", "''") Session("login") = "JA" Session.Timeout = 30 Response.Write "<h1>Du er nu logget korrekt ind</h1>" Response.Write "<p><a href='default_secure.asp'>Link til beskyttet fil</a></p>" Else Session("login") = "NEJ" Session.Timeout = 30 Response.Write "<h1>Du er IKKE logget korrekt ind</h1>" Response.Write "<p><a href='default_secure.asp'>Link til beskyttet fil</a></p>" fundet = true End if rs.MoveNext wend Conn.Close Set Conn = Nothing %> Så få jeg fejl her: If Request.Form("login") = rs("username") AND Request.Form("password") = rs("password") Then
13. februar 2005 - 01:51
#5
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/data.mdb") Conn.Open DSN login = Request.Form("login") login = Replace(login, "'", "''") strSQL = "Select * From login where username='" & login & "'" Set rs = Conn.Execute(strSQL) fundet = false If Not rs.EOF Then If Request.Form("login") = rs("username") AND Request.Form("password") = rs("password") Then fundet = True End If End If If fundet Then Session("login") = "JA" Session.Timeout = 30 Response.Write "<h1>Du er nu logget korrekt ind</h1>" Response.Write "<p><a href='default_secure.asp'>Link til beskyttet fil</a></p>" Else Session("login") = "NEJ" Session.Timeout = 30 Response.Write "<h1>Du er IKKE logget korrekt ind</h1>" Response.Write "<p><a href='default_secure.asp'>Link til beskyttet fil</a></p>" End If Conn.Close Set Conn = Nothing %>
13. februar 2005 - 01:56
#6
Danke der var en lille fejl som jeg selv rettet ;) Men ellers tak If fundet Then = If fundet = True Then Laver du et svar ?
13. februar 2005 - 02:50
#7
ok. Når man blot skriver If fundet Then er det underforsået at fundet skal være True
Kurser inden for grundlæggende programmering