12. december 2002 - 16:39Der er
8 kommentarer og 1 løsning
tjekke om brugernavn eksisterer før ændring
Jeg har fået en adgangssystem til at virke, således at brugerne efter logon kan ændre oplysninger om dem selv. Der ud over får de mulighed for at ændre deres brugernavn. Dog er der det minus, at hvis de vælger et brugernavn som eksisterer i forvejen, så går det galt!
Hvordan kan jeg sikre mig at de ikke vælger et allerede taget brugernavn.
' Tjek om alt er blevet fyldt ud, badflag bestemmer om fejlfunktion skal kaldes badflag = 0
if brugernavn = "" then notfilled(0) = "Brugernavn" badflag = 1 end if if fornavn = "" then notfilled(1) = "Fornavn" badflag = 1 end if if efternavn = "" then notfilled(2) = "Efternavn" badflag = 1 end if 'if telefon = "" then ' notfilled(3) = "Telefon" ' badflag = 1 'end if 'if email = "" then ' notfilled(4) = "Email" ' badflag = 1 'end if 'if www = "" then ' notfilled(5) = "Hjemmeside" ' badflag = 1 'end if if password = "" then notfilled(6) = "Password" badflag = 1 end if
if badflag = 1 then signuperror("nofield") end if
'Skab forbindelse og indsaet brugerens oplysninger i databasen %> <!--#include file="database.inc"--> <% Set objRecBrugernavn = Server.CreateObject("ADODB.Recordset") objRecBrugernavn.open "deltagere WHERE Id = " & brugerId , objConn, 3, 3
if objRecBrugernavn("password") = password then objRecBrugernavn("brugernavn") = brugernavn objRecBrugernavn("fornavn") = fornavn objRecBrugernavn("efternavn") = efternavn objRecBrugernavn("telefon") = telefon objRecBrugernavn("email") = email objRecBrugernavn("www") = www
<table width="100%" border="0"> <tr> <td align="center"> <%if errortype = "nofield" then%> Du har ikke udfyldt følgende felter korrekt: <br> <% for count = 0 to 6 if notfilled(count) <> "" then %> <b><%=notfilled(count)%></b><br> <% end if next else %> <p>Dit password er ikke korrekt</p> <%end if%> </td> </tr>
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Set objRecBrugernavn = Server.CreateObject("ADODB.Recordset") objRecBrugernavn.open "deltagere WHERE Id = " & brugerId , objConn, 3, 3
if objRecBrugernavn("password") = password then
strSQL = "SELECT * FROM deltagere WHERE [brugernavn] = '" & brugernavn & "'"
Set objRsTjekBrugernavn = objConn.Execute(strSQL) If objRsTjekBrugernavn.EOF then objRecBrugernavn("brugernavn") = brugernavn objRecBrugernavn("fornavn") = fornavn objRecBrugernavn("efternavn") = efternavn objRecBrugernavn("telefon") = telefon objRecBrugernavn("email") = email objRecBrugernavn("www") = www Else Response.Write("Brugeren findes i forvejen!") End If
Det er mening, at der bliver lavet en søgning af alle brugernavne og hvis brugernavnet fra Request.form er ens med søgning så hedder det "else" ellers når søgningen End of File og brugernavnet er ikke ens - hvor for det så kan opdateres. Det giver mening.
Men når jeg er logét ind som Hans Hansen og vil ændre nogle af/ eller alle sammen email, telefon, hjemmeside, fornavn og efternavn - så går det fint. Helt efter bogen.
Når Hans Hansen vil ændre sit brugernavn "HH" til "AA", så bliver det bekræftiget. MEN så dukker "AA"´s profil op som er en anden en "HH".
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.