/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
case-sensitive database-request
Fra : MooreHojer


Dato : 16-08-05 08:54

Hej NG

Hvordan gør man en søgning i en database case-sensitive? Det er i
forbindelse med et loginscript hvor jeg gerne vil have forskel på
store og små bogstaver.

Min koder er:

<--KODE START-->
Set rs = Conn.Execute("Select brugernavn, password from login
where ID = 3 ")

Dim brugernavn, password
Brugernavn = Request.Querystring("brugernavn")
Password = RequestQquerystring("password")

If brugernavn = rs("brugernavn") Then
If password = rs("password") Then
Response.Redirect "loggetind.asp"
Else
Response.Redirect "login.asp?besked=forkertpassword"
End If
Else
Response.Redirect "login.asp?besked=forkertbrugernavn"
End If
<--KODE SLUT-->

Men som koden er nu tager den ikke hensyn til store og små
bogstaver. Hvordan laver jeg om på det?

På Forhånd Tak!

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
jamen (16-08-2005)
Kommentar
Fra : jamen


Dato : 16-08-05 14:26

MooreHojer wrote:

> Brugernavn = Request.Querystring("brugernavn")
> Password = RequestQquerystring("password")
>
> If brugernavn = rs("brugernavn") Then
> If password = rs("password") Then
> Men som koden er nu tager den ikke hensyn til store og små
> bogstaver. Hvordan laver jeg om på det?

Det forstår jeg ikke. En sammenligning, som vist i koden, plejer nu at
være case sensitive

If "dog" = "DOG" Then
   Response.Write "ens"
Else
   Response.Write "ikke ens" '-- denne udskrives
End If


En detalje, ofte ville man nok samle det hele i en enkelt sætning:

If brugernavn = rs("brugernavn") And password = rs("password") Then

jamen (16-08-2005)
Kommentar
Fra : jamen


Dato : 16-08-05 14:29

jamen wrote:

> En detalje, ofte ville man nok samle det hele i en enkelt sætning:
>
> If brugernavn = rs("brugernavn") And password = rs("password") Then

Okay, ved nærmere eftersyn, så er det jo med vilje at du har konstrueret
koden med to if-sætninger. Glem min detalje :)

MooreHojer (16-08-2005)
Kommentar
Fra : MooreHojer


Dato : 16-08-05 14:27

> Det forstår jeg ikke. En sammenligning, som vist i koden, plejer nu at
> være case sensitive
>
> If "dog" = "DOG" Then
> Response.Write "ens"
> Else
> Response.Write "ikke ens" '-- denne udskrives
> End If

Hmmm... jeg prøver lige at kigge på det en gang til

> En detalje, ofte ville man nok samle det hele i en enkelt sætning:
>
> If brugernavn = rs("brugernavn") And password = rs("password") Then

Jeg har bevist valgt den anden måde da det giver mulighed for en mere
nøjagtig fejlmeddelelse til brugeren, men ellers tak for tippet

--
MooreHojer


Dj Uncas (16-08-2005)
Kommentar
Fra : Dj Uncas


Dato : 16-08-05 14:34


"MooreHojer" <simon@moorehojer.dk> skrev i en meddelelse
news:4301e98f$0$18636$14726298@news.sunsite.dk...
>> Det forstår jeg ikke. En sammenligning, som vist i koden, plejer nu at
>> være case sensitive
>>
>> If "dog" = "DOG" Then
>> Response.Write "ens"
>> Else
>> Response.Write "ikke ens" '-- denne udskrives
>> End If
>
> Hmmm... jeg prøver lige at kigge på det en gang til
>
>> En detalje, ofte ville man nok samle det hele i en enkelt sætning:
>>
>> If brugernavn = rs("brugernavn") And password = rs("password") Then
>
> Jeg har bevist valgt den anden måde da det giver mulighed for en mere
> nøjagtig fejlmeddelelse til brugeren, men ellers tak for tippet

Det skal du passe på med. Hvis der er en der prøver at få adgang til dit
system uden at være bruger, og han gætter et brugernavn, er der så meget
kortere til at finde password!



MooreHojer (16-08-2005)
Kommentar
Fra : MooreHojer


Dato : 16-08-05 14:43

Nu har jeg fundet fejlen efter en grundig gennemgang af hele koden...

Lige efter at jeg tildeler variablerne bliver de lavet til små
bogstaver. Den kodestump er nu slettet og så virker det som det skal

Tak for hjælpen!

--
MooreHojer


Søg
Reklame
Statistik
Spørgsmål : 177548
Tips : 31968
Nyheder : 719565
Indlæg : 6408799
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste