Avatar billede lund_dk Praktikant
22. februar 2007 - 10:50 Der er 9 kommentarer og
1 løsning

tag IKKE højde for stor og små bogstaver

Jeg har dette login script, hvordan undår jeg at den tager højde for store og små bogstaver ?

Så hvis brugernavn: Brugernavn bliver skrveet BrUgErNavN og ligeledes password, så skal den gå igennem alligevel


<%elseif cmd = "Login" then
if Request.ServerVariables("REQUEST_METHOD") = "POST" then
brugernavn = Trim(replace(Request.Form("brugernavn"), "'", "''"))
password = Trim(replace(Request.Form("password"), "'", "''"))


'Tjecker om felterner er udfydlt
if brugernavn <> "" AND password <> "" then

Sql = "select * from medlemmer where brugernavn = '" & brugernavn & "'"
Set rs = Conn.Execute(sql)

'Tjecker om brugeren eksisterer
if rs.EOF or rs.BOF then
response.redirect "./?S=Forum&cmd=Login&msg=Brugernavnet findes ikke."

else

'tjecker om passwordsne matcher hinanden
if rs("password") = password then
Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "select * from medlemmer where brugernavn = '" & brugernavn & "'"
rs.Open strsql, conn, 1, 3

 
Session("login") = true
Session("brugernavn") = Rs("brugernavn")
Session("id") = Rs("id")
if rs("admin") = 1 then Session("admin") = true end if


Conn.Execute("UPDATE medlemmer SET Online = 1 WHERE id=" & session("id") & "")
Conn.Execute("UPDATE medlemmer SET sidstelogin = now() WHERE id=" & session("id") & "")

response.redirect "./?S=Forum"

else
response.redirect "./?S=Forum&cmd=Login&msg=Den indtastede adgangskode er ikke korrekt."

end if

end if

rs.Close
set rs = nothing

else
response.redirect "./?S=Forum&cmd=Login&msg=Brugernavn/password ikke udfyldt."

end if
end if

%>
Avatar billede dr_chaos Nybegynder
22. februar 2007 - 10:51 #1
Sql = "select * from medlemmer where brugernavn = '" & lcase(brugernavn) & "'"
Avatar billede dr_chaos Nybegynder
22. februar 2007 - 10:51 #2
du kan bruge lcase som vist i ovenstående eksempel.
Avatar billede nidyahou Praktikant
22. februar 2007 - 10:55 #3
yeah, men skal han så ikke skrive:

Sql = "select * from medlemmer where lcase(brugernavn) = '" & lcase(brugernavn) & "'"

ellers forudsætter det at brugernavnet fra start er skrevet i lowercase.
Avatar billede dr_chaos Nybegynder
22. februar 2007 - 11:02 #4
lcase er ikke lovlig i sql server ihvertifald.
hvis det er sql server som er datalager skal man bruge:
Sql = "select * from medlemmer where LOWER(brugernavn) = '" & lcase(brugernavn) & "'"
Avatar billede nidyahou Praktikant
22. februar 2007 - 11:12 #5
så forstår jeg egentlig ikke at jeg har kunnet processe denne her linie:

"Select * from `Users` where LCase(`Nickname`) = '" & LCase(strUsr) & "'"

fuldstændig fejlfrit på en MySQL server i snart 1 år.
Avatar billede dr_chaos Nybegynder
22. februar 2007 - 12:46 #6
det er meget muligt. Jeg snakkede dog om ms sql :)
Har ikke brugt mysql så meget :)
Avatar billede nidyahou Praktikant
22. februar 2007 - 14:10 #7
hæhæ, men det er jo kun rige mennesker og firmaer der bruger mssql :D
Avatar billede dr_chaos Nybegynder
22. februar 2007 - 14:17 #8
Man skal ikke være rig for at bruge sqlexpress :)
Jeg arbejder også for novozymes, som har råd til en enkelt sql server eller 2 :)
Avatar billede lund_dk Praktikant
27. februar 2007 - 13:43 #9
smid et svar nidyahou
Avatar billede nidyahou Praktikant
27. februar 2007 - 15:49 #10
bang
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester