---
title: "Skillnad mellan \"P\" och \"p\""
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/120588-skillnad-mellan-p-och-p"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "hallmert"
published: "2005-01-20T11:22:12.000Z"
updated: "2005-01-20T12:14:52.000Z"
replies: 19
views: 489
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/120588-skillnad-mellan-p-och-p"
---

# Skillnad mellan "P" och "p"

## #1 — hallmert, 2005-01-20T11:22Z

Hej på er! Jag håller på med en grej där man ska regga sig som medlem. Om det finns en "Patrik" registrerad, så kan den ändå regga en användare om personen reggar sig som "patrik", det är ju lite knäppt. Går det att få den här koden till att göra någon icke-skillnad på stora och små bokstäver? :)

Den här koden använder jag nu som kollar om användarnamnet finns, men jag vill ha den så den inte regga någon "patrik" även fast det är "Patrik" som är registrerad.

Tack på förhand!

```
	IF connect.execute("select * from members where username='" & request.form("username") & "'").eof then 

		Session("meddelande") = "Det användarnamnet var redan taget! Försök med något annat"
		RecSet.Close
		Response.Redirect "bli_medlem.asp?user="

	End If
```

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

## #2 — @nders, 2005-01-20T11:24Z

```
	IF connect.execute("select * from members where ucase(username)='" & ucase(request.form("username")) & "'").eof then
```

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

## #3 — hallmert, 2005-01-20T11:35Z

Hm, stödde på ett annat problem.

```
<%
Addera = "Select * From members"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

	RecSet.AddNew

	RecSet("fnamn") = Request.Form("fnamn")
	RecSet("enamn") = Request.Form("enamn")
	RecSet("username") = Request.Form("username")
	RecSet("losen") = Request.Form("pw1")
	RecSet("epost") = Request.Form("epost")
	RecSet("msn") = Request.Form("msn")
	RecSet("stad") = Request.Form("stad")
	RecSet("press") = "Användaren har inte gjort någon presentation ännu."
	RecSet("bild") = "ingen.jpg"
	RecSet("datum") = Now()
	RecSet("status") = "Offline"
	
	RecSet.Update

	Connect.Close
	Set RecSet = nothing
	Set Connect = nothing

Session("meddelande") = "Nu är du registrerad. Prova att logga in på förstasidan!"
Response.Redirect "bli_medlem.asp?user=reggad"

%

Jag får fel på "RecSet.Update", varför?

Felet: 

Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E2F)
[Microsoft][ODBC Microsoft Access Driver] The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.
/jobb/theevents.net/add_member.asp, line 62
```

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

## #4 — paddan, 2005-01-20T11:47Z

RecSet.AddNew

Om du ska uppdatera vad gör den här??
Sen är det så att den försöker spara en ny post med samma id som en annan ..och det är en NO NO i primärnyklar...
Primärnyklar är unika(one of a kind)

Mvh Paddan

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

## #5 — hallmert, 2005-01-20T11:49Z

> **paddan skrev:**
>
> RecSet.AddNew
> 
> Om du ska uppdatera vad gör den här??
> Sen är det så att den försöker spara en ny post med samma id som en annan ..och det är en NO NO i primärnyklar...
> Primärnyklar är unika(one of a kind)
> 
> Mvh Paddan

Man ska spara en helt ny användare, så den ska inte uppdatera.
Informationen kommer från ett forumlär på förstasidan där man kan registrera sig till backstage-prylar ju! :) Hur gör jag för att få det att fungera?

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

## #6 — paddan, 2005-01-20T11:49Z

Sen en sak till...hur vet den vilket ID den ska updatera...skicka med Id:et genom en gömd  textruta i formuläret...textrutan kan tex heta id!
och sätt :
Addera = "Select \* From members where ID =" & Request.Form("id") & ""

Mvh paddan

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

## #7 — hallmert, 2005-01-20T11:50Z

> **paddan skrev:**
>
> Sen en sak till...hur vet den vilket ID den ska updatera...skicka med Id:et genom en gömd  textruta i formuläret...textrutan kan tex heta id!
> och sätt :
> Addera = "Select \* From members where ID =" & Request.Form("id") & ""
> 
> Mvh paddan

Man ska spara en helt ny användare, så den ska inte uppdatera.
Informationen kommer från ett forumlär på förstasidan där man kan registrera sig till backstage-prylar ju!  Hur gör jag för att få det att fungera?

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

## #8 — paddan, 2005-01-20T11:51Z

Oki..såg lita fel...
Det databasen säger är att den försöker spara ett ID som redan finns...
Kolla hur det ser ut i din databas..
Har du en primärnykel...!??

Mvh Martin

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

## #9 — hallmert, 2005-01-20T11:52Z

Jepp det har jag.

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

## #10 — paddan, 2005-01-20T11:52Z

Eller så har du satt index på något fält i databasen och satt att den inte tillåter några kopior...!

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

## #11 — paddan, 2005-01-20T11:53Z

Kan du skicka den till mig så kan jag testa på min dator så ska jag nog få den att fungera...!

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

## #12 — paddan, 2005-01-20T11:53Z

Skicka den  till :
<stanstadpost@hotmail.com>

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

## #13 — hallmert, 2005-01-20T11:59Z

Du hade rätt, ett fält var indexerat. Tack! Men jag har fler problem.

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

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

Addera = "Select username From members"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

Do Until RecSet.EOF

	IF connect.execute("select * from members where ucase(username)='" & ucase(request.form("username")) & "'").eof then 

		Session("meddelande") = "<p>Det användarnamnet var redan taget! Försök med något annat"
		RecSet.Close
		Response.Redirect "bli_medlem.asp?user="

	End If

RecSet.MoveNext

Loop

RecSet.Close
```

Den här koden kollar så att inte användarnamnet finns. Men den skickar användaren till bli_medlem.asp?user=" och skriver ut session-meddelandet om att användarnamnet redan finns, ÄVEN fast det inte finns :) Skummt?

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

## #14 — Poffe, 2005-01-20T12:05Z

Den kollar om Användarnamnet finns ja, men som det är nu så säger den att det finns om det inte finns.

```
If Not connect.execute("select * from members where ucase(username)='" & ucase(Replace(request.form("username"), "'", "''")) & "'").EOF Then
```

F.ö. tycker jag inte att du ska lägga till nya poster med RecSet utan med SQL ex:

```
	Connect.Execute "Instert Into members " _
		& "(fnamn, enamn, username, losen, epost, msn, stad, press, bild, datum, status) " _
		& "Values('" & FixSql(Request.Form("fnamn")) & "','" & FixSql(Request.Form("enamn")) & "','" & FixSql(Request.Form("username")) & "'," _
		& "'" & FixSql(Request.Form("pw1")) & "','" & FixSql(Request.Form("epost")) & "','" & FixSql(Request.Form("msn")) & "'," _
		& "'" & FixSql(Request.Form("stad")) & "', "Användaren har inte gjort någon presentation ännu.", "ingen.jpg", '" & Now & "', "Offline")"
		
	Function FixSql(str)
		FixSql = Replace(Trim(str), "'", "''")
	End Function
```

La in en liten funktion oxå som byter ' till '' (två '), orkade inte skriva en replace på varje..

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

## #15 — hallmert, 2005-01-20T12:08Z

> **Poffe skrev:**
>
> Den kollar om Användarnamnet finns ja, men som det är nu så säger den att det finns om det inte finns.
> 
>
>
> ```
> If Not connect.execute("select * from members where ucase(username)='" & ucase(Replace(request.form("username"), "'", "''")) & "'").EOF Then
> ```

Ska jag lägga den här under den andra Connect.Ececute, eller ersätta? Jag vill ju ha så den INTE reggar en "erik" om det finns en "Erik" redan!

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

## #16 — Poffe, 2005-01-20T12:10Z

Ersätta. Det kommer inte gå att regga både erick och Erik nu nej.

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

## #17 — hallmert, 2005-01-20T12:11Z

Tack för hjälpen, nu fungerar det.

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

## #18 — @nders, 2005-01-20T12:13Z

> **Poffe skrev:**
>
> Ersätta. Det kommer inte gå att regga både erick och Erik nu nej.

Hur bestämmer den att *eri**c**k* och *Erik* är samma?

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

## #19 — paddan, 2005-01-20T12:14Z

Lita konstig kod det där eftersom det säger till at den ska kolla om namnet finns men om namnet finns redan så skickas du tillbaka men om det inte finns...vad händer då?
Prova denna koden:
\<%
Set Connect = Server.CreateObject("ADODB.Connection") 
Connect.Open "driver={Microsoft Access Driver (\*.mdb)};dbq=" & Server.MapPath("db/fanclub.mdb")&";pwd=losen"

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

Do Until RecSet.EOF

IF Request.Form("username") = RecSet("username") Then
Session("meddelande") = "Det användarnamnet var redan taget! Försök med något annat"
Response.Redirect "bli_medlem.asp?user="
END IF

RecSet.MoveNext
Loop

  RecSet.AddNew
  RecSet("username") = Request.Form("username")
  RecSet("password") = Request.Form("password")
  RecSet("reggad") = Date
  RecSet.Update

RecSet.Close
Conn.Close
Response.Redirect "regga_klart.asp"
%\>

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

## #20 — paddan, 2005-01-20T12:14Z

ser att du har fått hjälp...gott!

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/120588-skillnad-mellan-p-och-p
