---
title: "Problem (stora/små bokstäver)"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/81937-problem-stora-små-bokstäver"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Icebreaker"
published: "2003-07-13T20:25:20.000Z"
updated: "2003-07-14T12:04:39.000Z"
replies: 5
views: 275
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/81937-problem-stora-små-bokstäver"
---

# Problem (stora/små bokstäver)

## #1 — Icebreaker, 2003-07-13T20:25Z

Håller på och bygger en liten community bara för skojs skull.
Har ett litet problem och det är när man ska registrera sitt användarnamn. Jag vill inte ha så att 2 st personer ska kunna ha samma användarnamn.
Jag kontrollerar detta med denna lilla kod:

Username = TRUE
Do Until Username = FALSE OR rs.EOF

If rs("User") = Request.Form("User") Then
Username = FALSE
Response.Write "Användarnamnet är upptaget!"
Exit Do
End If

rs.MoveNext
Loop

Denna kod funkar bra ifall man väljer ett namn som är EXAKT lika som det som redan finns. Den skiljer på stora och små bokstäver.
Jag vill ha så att det INTE skiljer på stora och små bokstäver.
Har jag exempelvis en person men namn "nisse" vill jag inte att någon ska kunna registrera "NISSE". 
Kan man fixxa till koden på nått sätt så att detta löser sig eller måste jag skriva en ny kod-lösning?

Hoppas ni fattar.. ?

Permalänk: https://www.webforum.nu/p/81937

## #2 — @nders, 2003-07-13T20:32Z

Det där borde du lösa direkt i SQL-frågan med en WHERE-sats, då behöver du bara göra en EOF-koll, du slipper loopa, och allt går mycket smidigare. Exempel på SQL-fråga:

```
strSQL = "SELECT * FROM tblUsers WHERE UCase(UserName) = '" & UCase(Replace(Request.Form("UserName"), "'", "''")) & "'"
```

Jag utgår ifrån att du använder Access.

Mvh

Permalänk: https://www.webforum.nu/p/1108912

## #3 — Icebreaker, 2003-07-13T21:03Z

Ja, det låter ju smidigt. Synd bara att jag är så dum och inte fattar  :( 

Här är koden i sin helhet. Om nån orkar ändra om den och lägga in @nders lösning kanske...

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("data/members.mdb") & ";pwd=;" 

Set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM login" 
	
rs.Open SQL, Connect, adOpenStatic, adLockOptimistic

Username = TRUE
Do Until Username = FALSE OR rs.EOF

If rs("User") = Request.Form("User") Then
Username = FALSE
Response.Write "Användarnamnet är upptaget!"
Exit Do
End If

rs.MoveNext
Loop
		
If Username = TRUE THEN

rs.AddNew 
rs("User") = Request.Form("User")

rs.Update
rs.Close
Connect.Close

End If
```

Permalänk: https://www.webforum.nu/p/1108937

## #4 — Erik Juhlin, 2003-07-13T21:09Z

```
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("data/members.mdb") & ";pwd=;" 

Set rs = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * FROM login UCase(UserName) = '" & UCase(Replace(Request.Form("User"), "'", "''")) & "'"

rs.Open SQL, Connect, adOpenStatic, adLockOptimistic

Set Connect = Nothing

Username = rs.EOF

If Username = True Then
	
	rs.AddNew 
	rs("User") = Request.Form("User")
	
	rs.Update
	
End If

Set rs = Nothing
```

Permalänk: https://www.webforum.nu/p/1108941

## #5 — Icebreaker, 2003-07-13T22:17Z

Japp, funkar fin fint nu  :) 
Fick bara lägga till ett litet "WHERE" i SQL-strängen i Eriks kod.  ;)

Permalänk: https://www.webforum.nu/p/1108985

## #6 — Erik Juhlin, 2003-07-14T12:04Z

Lite får du göra själv! ;)

Permalänk: https://www.webforum.nu/p/1109198

---

Tråden på webben: https://www.webforum.nu/amne/asp/81937-problem-stora-små-bokstäver
