webForumDet fria alternativet

Stora och små bokstäver

ASP

9 svar · 409 visningar · startad av Ceeron

Medlem sedan aug. 2000378 inlägg
Frågan#1

Har en databas som rymmer användare och har gjort ett inloggningsscript. Om användarnamnet är Ceeron måste man skriva med stort C för att den ska logga in. Hur gör man för att den inte ska vara så kinkig med versaler o sånt? Använder Access

Medlem sedan jan. 20011 213 inlägg
#2

En enkel sökning hittade bl.a detta:

Lösning

Mvh

//G8

Medlem sedan aug. 2002207 inlägg
#3

Kanske inte bästa idén, men det funkar iaf om man gör om alla bokstäver till stora eller små när man skall kontrollera om det är samma.

Medlem sedan okt. 20005 273 inlägg
#4

Hur ser inloggnings-koden ut? För vad jag kan minnas är inte access inte känslig för versaler/gemener.

mvh icaaq

Medlem sedan feb. 200112 078 inlägg
#5

icaaq skrev:

Hur ser inloggnings-koden ut? För vad jag kan minnas är inte access inte känslig för versaler/gemener.

mvh icaaq

Nej, access är inte case-sens som standard.

Denniz PoP skrev:

Kanske inte bästa idén, men det funkar iaf om man gör om alla bokstäver till stora eller små när man skall kontrollera om det är samma.

Det är ju faktiskt det bästa sättet. :)


if lcase(request.form("user")) = lcase(rs("user")) AND lcase(request.form("passw")) = lcase(rs("user")) then
   response.write "Inloggad."
else
   response.write "Ej inloggad."
end if

Kör lcase() på alla strängar bara så fixar det sig. :)

Medlem sedan aug. 2000378 inlägg
#6

Tackar så mkt OveRRidE det funkar perfect :)

Medlem sedan juni 200032 967 inlägg
#7

Man bör dock göra den jämförelsen direkt i SQL-frågan.

Mvh,

Medlem sedan feb. 200112 078 inlägg
#8

@nders skrev:

Man bör dock göra den jämförelsen direkt i SQL-frågan.

Mvh,

Varför? Om du tänker på ', så är det ju lätt löst. :)

Medlem sedan juni 200032 967 inlägg
#9

OveRRidE skrev:

Varför? Om du tänker på ', så är det ju lätt löst. :)

Nej, jag tycker det är onödigt att hämta en massa data man inte behöver.

strSQL = "SELECT 1 FROM tabellen WHERE UCase(username) = '" & UCase(strUserName) & "' AND UCase(password) = '" & UCase(strPassword) & "'"
set objRS = objConn.execute (strSQL)
if objRS.EOF then
    ' näe, inloggningen stämmer ju för 17 bövlar inte!
else
    ' jippelidoo!
end if
' stäng och rensa objekt

(Ja, man bör escape:a apostrofer, men jag gör inte det här, för det ser så kladdigt ut.)

Använder man MS SQL Server och inte Access, så heter funktionen för att göra en sträng till uppercase UPPER().

Mvh,

Medlem sedan feb. 200112 078 inlägg
#10

Nej, jag tycker det är onödigt att hämta en massa data man inte behöver.

Givetvis. ;)

Om man nu är en prestandasnålis. ;)

280 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
143 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)