Når man åbner kode ændre siden skal den altså find frem til hvem er logget ind og derved skal brugern kun få adgang til at ændre sin egen kode. Sammentidig skal han først angive sin gamle kode og så skrive den nye kode 2 gange som et sikkerheds check. Derefter skal den nye kode lagres. Hvordan skal det laves?
Du skal vel bare have et link som updater hans kode, med en simpel sql sætning. f.eks: strSQL = "update bruger set brugerkode =" & nyKodefelt & " where brugernavn =" & session("auth_brugernavn")
if gkodefelt1 = gkodefelt2 then allowKodeSkift = 1 else allowKodeSkift = 0 End if
Så skal du bare lave en enkelt if-sætning til, som så sender koden ind til databasen.
Set Conn = Server.CreateObject("ADODB.Connection") Set Rs = Server.CreateObject("ADODB.Recordset") Conn.Open "DBQ=" & Server.Mappath("Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};" SQL = "SELECT Brugernavn, Brugerkode FROM Bruger WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"' AND Brugerkode = '"&replace(request.form("oldpassword"), "'", "''")&"'" rs.Open SQL, Conn
if not rs.EOF then dbConnection.execute("UPDATE Bruger SET Brugerkode = '"&replace(request.form("newpassword"), "'", "''")&"' WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"'") response.write("Din kode er nu ændret.") else response.write("Du skrev den forkerte kode. Prøv igen.") end if
<html> <head> <title>changing password</title> <script language="javascript"> <!-- function validate(){ // passwordcheck below: if (document.forms.members.newpassword.value != document.forms.members.newpassword2.value){ alert("Dine 2 kodeord er ikke ens!"); return false } else{return true} //end }
//--> </script> </head> <body marginheight="0" marginwidth="0" topmargin="0" leftmargin="0" rightmargin="0"> Her kan du ændre dit kodeord:<br> <br> <br>
<% if trim(request.form("password")) = "" then %> <form action="kode.asp" method="post" name="members" onsubmit="return validate()">
Set Conn = Server.CreateObject("ADODB.Connection") Set Rs = Server.CreateObject("ADODB.Recordset") Conn.Open "DBQ=" & Server.Mappath("Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};" SQL = "SELECT Brugernavn, Brugerkode FROM Bruger WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"' AND Brugerkode = '"&replace(request.form("oldpassword"), "'", "''")&"'" rs.Open SQL, Conn
if not rs.EOF then dbConnection.execute("UPDATE Bruger SET Brugerkode = '"&replace(request.form("newpassword"), "'", "''")&"' WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"'") response.write("Din kode er nu ændret.") else response.write("Du skrev den forkerte kode. Prøv igen.") end if
<html> <head> <title>changing password</title> <script language="javascript"> <!-- function validate(){ // passwordcheck below: if (document.forms.members.newpassword.value != document.forms.members.newpassword2.value){ alert("Dine 2 kodeord er ikke ens!"); return false } else{return true} //end }
//--> </script> </head> <body marginheight="0" marginwidth="0" topmargin="0" leftmargin="0" rightmargin="0"> Her kan du ændre dit kodeord:<br> <br> <br>
<% if trim(request.form("password")) = "" then %> <form action="kode.asp" method="post" name="members" onsubmit="return validate()">
Set Conn = Server.CreateObject("ADODB.Connection") Set Rs = Server.CreateObject("ADODB.Recordset") Conn.Open "DBQ=" & Server.Mappath("Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};" SQL = "SELECT Brugernavn, Brugerkode FROM Bruger WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"' AND Brugerkode = '"&replace(request.form("oldpassword"), "'", "''")&"'" rs.Open SQL, Conn
if not rs.EOF then Conn.execute("UPDATE Bruger SET Brugerkode = '"&replace(request.form("newpassword"), "'", "''")&"' WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"'") response.write("Din kode er nu ændret.") else response.write("Du skrev den forkerte kode. Prøv igen.") end if
<html> <head> <title>changing password</title> <script language="javascript"> <!-- function validate(){ // passwordcheck below: if (document.forms.members.newpassword.value != document.forms.members.newpassword2.value){ alert("Dine 2 kodeord er ikke ens!"); return false } else{return true} //end }
//--> </script> </head> <body marginheight="0" marginwidth="0" topmargin="0" leftmargin="0" rightmargin="0"> Her kan du ændre dit kodeord:<br> <br> <br>
<% if trim(request.form("newpassword")) = "" then %> <form action="kode.asp" method="post" name="members" onsubmit="return validate()">
Set Conn = Server.CreateObject("ADODB.Connection") Set Rs = Server.CreateObject("ADODB.Recordset") Conn.Open "DBQ=" & Server.Mappath("Login.mdb") & ";Driver={Microsoft Access Driver (*.mdb)};" SQL = "SELECT Brugernavn, Brugerkode FROM Bruger WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"' AND Brugerkode = '"&replace(request.form("oldpassword"), "'", "''")&"'" rs.Open SQL, Conn
if not rs.EOF then Conn.execute("UPDATE Bruger SET Brugerkode = '"&replace(request.form("newpassword"), "'", "''")&"' WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"'") response.write("Din kode er nu ændret.") else response.write("Du skrev den forkerte kode. Prøv igen.") end if
if not rs.EOF then Conn.execute("UPDATE Bruger SET Brugerkode = '"&replace(request.form("newpassword"), "'", "''")&"' WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"'") response.write("Din kode er nu ændret.") else response.write("Du skrev den forkerte kode. Prøv igen.") end if
skal erstattes med:
if not rs.EOF then if trim(len(request.form("newpassword"))) => 4 then Conn.execute("UPDATE Bruger SET Brugerkode = '"&replace(request.form("newpassword"), "'", "''")&"' WHERE Brugernavn = '"&replace(request.form("brugernavn"), "'", "''")&"'") response.write("Din kode er nu ændret.") else response.write("Dit kodeord skal være minium 4 bogstaver") end if else response.write("Du skrev den forkerte kode. Prøv igen.") end if
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.