Jag undrar om denna inloggningen är korrekt gjord och säker? Jätte tacksam för svar...:)
<%
' 0===================================================================0
' Kontroll Användare
' 0===================================================================0
If Request.Querystring("kontroll") = "anvandare" Then
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("safe.mdb") & ";pwd=kalle;"
Set RecSet = Server.CreateObject("ADODB.Recordset")
username = replace(request.form("user"),"'","''")
password = MD5(replace(request.form("pass"),"'","''"))
SQL = "SELECT * FROM userid where user= '"&username&"' and pass= '"&password&"'"
RecSet.Open SQL, Connect
If RecSet.EOF then
Connect.Close
Set Connect=Nothing
Session.Abandon
Response.Redirect "default.asp?session=De blev något fel, försök igen!"
Else if RecSet("aktiv") = "nej" then
Connect.Close
Set Connect=Nothing
Session.Abandon
Response.Redirect "default.asp?session=Konto ej aktivt, kontakta Webmaster!"
end if
Session.TimeOut = 120
Session("valkommen") = recset("valkommen")
Connect.Close
Set Connect=Nothing
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("safe.mdb") & ";pwd=kalle;"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Uppdatera = "SELECT * FROM userid WHERE user= '"&username&"' and pass= '"&password&"'"
RecSet.Open Uppdatera, Connect, adOpenDynamic, adLockOptimistic
RecSet("inloggad") = date+time
RecSet.Update
RecSet.Close
Set RecSet = Nothing
Connect.Close
Set Connect = Nothing
Response.Redirect "../space/mir/default.asp"
End If
End If %>
-Onödigt att öppna samma databaskoppling två gånger
-Onödigt att SELECT:a ut ett recordset för att uppdatera
-Lite tokig if-struktur
-Strängar måste URLEncodas när de ska med i en querystring
<%
' 0=========================================================== ========0
' Kontroll Användare
' 0=========================================================== ========0
If Request.Querystring("kontroll") = "anvandare" Then
username = replace(request.form("user"),"'","''")
password = MD5(replace(request.form("pass"),"'","''"))
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("safe.mdb") & ";pwd=kalle;"
SQL = "SELECT * FROM userid where user= '"&username&"' and pass= '"&password&"'"
Set RecSet=Connect.Execute(SQL)
If RecSet.EOF then
Connect.Close
Set Connect=Nothing
Session.Abandon
Response.Redirect "default.asp?session=" & Server.URLEncode("De blev något fel, försök igen!")
Elseif RecSet("aktiv") = "nej" then
Connect.Close
Set Connect=Nothing
Session.Abandon
Response.Redirect "default.asp?session=" & Server.URLEncode("Konto ej aktivt, kontakta Webmaster!")
end if
Session.TimeOut = 120
Session("valkommen") = recset("valkommen")
Uppdatera = "UPDATE userid SET inloggad=Now() WHERE user= '"&username&"' and pass= '"&password&"'"
Connect.Execute Uppdatera,,128
Connect.Close
Set Connect = Nothing
Response.Redirect "../space/mir/default.asp"
End If %>
pwd=Kalle kan du lika gärna ta bort. Det är ändå lätt att knäcka lösenord till databaser.
Lägg istället databasen utanför www mappen på servern, tex en mapp som heter db.
249 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2