---
title: "Sortera upp Medlemmar i A-Ö?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/12801-sortera-upp-medlemmar-i-a-ö"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Qimen"
published: "2001-11-24T13:23:00.000Z"
updated: "2001-11-24T16:24:00.000Z"
replies: 18
views: 699
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/12801-sortera-upp-medlemmar-i-a-ö"
---

# Sortera upp Medlemmar i A-Ö?

## #1 — Qimen, 2001-11-24T13:23Z

Hej jag har en data bas med medlemmar och så kan varje medlem logga in och så vidare. Men så har jag en sida där man kan se alla medlemmar. Men där är ju inte så bra att ha alla på en sida (kan ju bli rätt långt). Det jag vill att när man väljer till ex. en bokstav "A" så kommer man in på den sidan och där listar scriptet upp alla medlemmar som börjar på A.
Förstår ni?

Ex. på hur jag får upp alla.

```
<%

If Session("login") <> "ok" Then
	Session("meddelande") = "Du har blivit urloggad, var god logga in igen!"
	Response.Redirect "default.asp"
End If

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

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

Addera = "Select * From members ORDER BY datum"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

%>
```

Det var databaskopplingen. 

```
<%
X = 0
DO Until RecSet.EOF OR X = 50
X=X+1
%>
        <tr> 
          <td width="55"><font size="1" color="#000000" face="Verdana, Arial, Helvetica, sans-serif"><a href="add_friend.asp?id2=<%=RecSet("id")%>" target="_self">lägg 
            till</a> </font></td>
          <td width="100"><font size="1" color="#000000" face="Verdana, Arial, Helvetica, sans-serif"><a href="whois1.asp?checkid=<%=RecSet("id")%>"><%=RecSet("username")%></a></font></td>
          <td width="100"><font size="1" color="#000000" face="Verdana, Arial, Helvetica, sans-serif"><%=RecSet("kunskap")%></font></td>
          <td><b><font size="1" <%if recset("status") = "offline" then%> color="#FF0000" <%else%>color="#339933" <%end if%>face="Verdana, Arial, Helvetica, sans-serif" face="Verdana, Arial, Helvetica, sans-serif"><%=RecSet("status")%></b></font></td>
          <td><font size="1" color="#000000" face="Verdana, Arial, Helvetica, sans-serif"><%=RecSet("datum")%></font></td>
        </tr>

<%
RecSet.MoveNext
Loop

RecSet.Close
Connect.Close
Set RecSet = nothing
Set Connect = nothing
%>
```

 och det var själva uppspelningen.

Hur gör jag detta? tacksam för kod exempel.

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

## #2 — mikul, 2001-11-24T13:30Z

byt ut

```
Addera = "Select * From members ORDER BY datum"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
```

mot 

```
Addera = "Select * From members ORDER BY username"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
```

/ Mikul

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

## #3 — Qimen, 2001-11-24T13:35Z

ja men då sortetar den väl bara ut användarnamnen, väll? jag vill ha bara dom som börjar på A.

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

## #4 — LarsG, 2001-11-24T13:59Z

Om du skickar vilken bokstav du vill söka på i querystring så kan du använda en fråga som ser ut så här

```
sql = "select * from members where username like '" & request.querystring("bokstav") & "%'"
```

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

## #5 — Qimen, 2001-11-24T14:03Z

Så att jag på varje sida gör jag en databaskoppling med det typ så här:

```
<%
If Session("login") <> "ok" Then
Session("meddelande") = "Du har blivit urloggad, var god logga in igen!"
Response.Redirect "default.asp"
End If

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

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

sql = "select * from members where username like '" & request.querystring("A") & "%'"

%>
```

eller är det helt fel?

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

## #6 — LarsG, 2001-11-24T14:14Z

Njae, jag tänkte mer att du på söksidan lade upp det så här

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

sql = "select distinct left(username,1) from members order by 1"

set rs = connect.execute(sql)
response.write "Sök medlemmar"
while not rs.eof
response.write "<a href='search.asp?bokstav=" & rs(0)& ">" & rs(0) & "</a>"
rs.movenext
wend
rs.close
connect.close
```

Då får du en länk för varje bokstav där det finns någon medlem.
Och sedan på search.asp så använder du den kod som jag skrev i förra inlägget.

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

## #7 — Qimen, 2001-11-24T14:58Z

Oki, det med länken fatta jag men med 

```
sql = "select * from members where username like '" & request.querystring("bokstav") & "%'"
```

fatta jag inte riktigt hur jag skulle göra med.

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

## #8 — LarsG, 2001-11-24T15:09Z

Jag tänkte bara att du byter ut din select-sats

```
Addera = "Select * From members ORDER BY datum"
```

mot den jag skrev och sedan loopar du igenom resultatet på samma sätt.

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

## #9 — Qimen, 2001-11-24T15:15Z

oki. får prova nu

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

## #10 — Qimen, 2001-11-24T15:52Z

Men på Search.asp sidan så får jag detta felmedelande:

> ADODB.Recordset fel '800a0bb9' 
>
> Programmet använder felaktiga parametrar, som antingen ligger utanför tillåtet intervall, eller som skapar en inbördes konflikt. 
>
> /inloggad/search.asp, rad 24

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

## #11 — Qimen, 2001-11-24T15:53Z

Då har jag gjort så här:

```
<%

If Session("login") <> "ok" Then
	Session("meddelande") = "Du har blivit urloggad, var god logga in igen!"
	Response.Redirect "../default.asp"
End If

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

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

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

%>
```

Och sedan försökt loppa upp det. Var är det för fel?

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

## #12 — @nders, 2001-11-24T15:54Z

Nu vet jag inte hur koden ser ut, men du kanske glömt att inkludera adovbs.inc och använder konstanter som deklareras där?

Annars: Hur ser koden ut?

Red: jag vet tydligen hur lite av koden ser ut. ;) adovbs.inc?

Mvh,

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

## #13 — Qimen, 2001-11-24T15:59Z

Ohh, vad dum är, glömde den, men så fick jag det att funka men den visar ju alla medlemmar ändå när man tryckt på en bokstav.

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

## #14 — @nders, 2001-11-24T16:04Z

Har du bytt ut SQL-frågan till den du fick av LarsG tidigare?

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

## #15 — Qimen, 2001-11-24T16:06Z

När man har valt en bokstav kommer man till Search.asp
På den sidan så har jag en databas koppling som ser ut så här 

```
<%

If Session("login") <> "ok" Then
	Session("meddelande") = "Du har blivit urloggad, var god logga in igen!"
	Response.Redirect "default.asp"
End If

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

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

sql = "select * from members where username like '" & request.querystring("bokstav") & "%'"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

%>
```

När jag har den så det upp att Programmet använder felaktiga parametrar, som antingen ligger utanför tillåtet intervall, eller som skapar en inbördes konflikt.

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

## #16 — @nders, 2001-11-24T16:10Z

Oki, då gör vi så här:

Ta bort denna:

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

Byt ut:

```
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
```

mot:

```
Set RecSet = Connect.Execute (Addera)
```

Mvh,

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

## #17 — Qimen, 2001-11-24T16:17Z

Då får jag meddelande om att det inte angivits något kommando för kommandoobjektet.

:(

```
<%

If Session("login") <> "ok" Then
	Session("meddelande") = "Du har blivit urloggad, var god logga in igen!"
	Response.Redirect "default.asp"
End If

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

sql = "select * from members where username like '" & request.querystring("bokstav") & "%'"
Set RecSet = Connect.Execute (Addera)

%>
```

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

## #18 — LarsG, 2001-11-24T16:21Z

```
Set RecSet = Connect.Execute (sql)
```

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

## #19 — Qimen, 2001-11-24T16:24Z

Tack så hemskt mycket alla ni som hjälpt mig.

Nu funkar det.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/12801-sortera-upp-medlemmar-i-a-ö
