---
title: "slumpa fram 5 olika bilder"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/40921-slumpa-fram-5-olika-bilder"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ampy"
published: "2002-04-05T11:06:25.000Z"
updated: "2004-08-16T10:37:46.000Z"
replies: 42
views: 1116
page: 1
pages: 3
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/40921-slumpa-fram-5-olika-bilder"
---

# slumpa fram 5 olika bilder

_Sida 1 av 3._

## #1 — ampy, 2002-04-05T11:06Z

Har sökt bland tidigare inlägg men har inte hittat något som visar hur man kan göra detta. 

SQL = "Select \* from members where bild = 'bild_yes' "

dessa krav vill jag uppfylla. Bilderna finns i en mapp som heter krypinbild och där heter bilderna bildid .jpg

Där id är ett nummer på den medlemmen som jag hämtar från SQL-satsen härovan. 

Hur ska man nu göra för att slumpa fram 5 olika bilder varje gång sidan laddas?

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

## #2 — eas, 2002-04-05T14:50Z

```

<% 
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=db.mdb"

SQL = "Select * from members where bild = 'bild_yes'"
RStemp = UBOUND(oConn.Execute(SQL).GetRows(),2)+1 

Randomize
Set RS = oConn.Execute(SQL)
Ror i = 1 to 5
     post = Int(RND*RStemp)
     For s = 1 to post
     RS.MoveNext
     Next
     Response.write "<img src='krypinbild/bild"&RS("id")&".jpg'>"
Next

Rs.Close
Set Rs = Nothing %>
```

Chansar jag på. Inte helt säker på Randomize där.

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

## #3 — ampy, 2002-04-05T14:58Z

Jag får Slut på programsats förväntas på denna rad:

Ror i = 1 to 5

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

## #4 — phazer23, 2002-04-05T15:17Z

Det skall nog stå

For i = 1 to 5 

istället för 

Ror i = 1 to 5

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

## #5 — ampy, 2002-04-05T15:22Z

Japp, du hade rätt, borde jag har sett själv. Men nu får jag 

Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post. 

på raden

RS.MoveNext

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

## #6 — LarsG, 2002-04-05T15:56Z

```
<% 
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=db.mdb"

SQL = "Select id from members where bild = 'bild_yes'"

Randomize
Set RS = oConn.Execute(SQL)
if  not rs.eof then
    bilder = rs.getrows()
    antalBilder = ubound(bilder,2) + 1
    For i = 1 to 5
        post = Int(RND*antalBilder)
        Response.write "<img src='krypinbild/bild"&bilder(post,0)&".jpg'>"
Next
end if
Rs.Close
Set Rs = Nothing
```

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

## #7 — ampy, 2002-04-05T16:03Z

Nu får jag detta felmeddelande:

Felaktigt matrisindex: '3' 

då trean kan vara mellan 1-5 för jag uppdaterade sidan och då blev det olika hela tiden.

Detta får jag på rad:

Response.write "\<img src='krypinbild/bild"&bilder(post,0)&".jpg'\>"

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

## #8 — eas, 2002-04-05T16:25Z

Finns det nåt på platsen med indexet 3 då?
Hur många poster har du?

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

## #9 — ampy, 2002-04-05T16:27Z

Det finns minst 5 poster.

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

## #10 — LarsG, 2002-04-05T16:28Z

Är det jag som blandar ihop matrisindex som vanligt?

```
Response.write "<img src='krypinbild/bild"&bilder(0,post)&".jpg'>"
```

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

## #11 — ampy, 2002-04-05T16:38Z

Märkte precis att jag även kan få detta felmeddelande:

Felaktigt matrisindex: '6' 

Alltså över 5.

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

## #12 — ampy, 2002-04-05T17:28Z

Nu funkar scriptet och ser alltså ut så här:

```
<% 
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("community.mdb")

SQL = "Select id from members where bild = 'bild_yes'"

Randomize
Set RS = oConn.Execute(SQL)
if  not rs.eof then
    bilder = rs.getrows()
    antalBilder = ubound(bilder,2) + 1
    For i = 1 to 5
        post = Int(RND*antalBilder)
	Response.write "<img src='krypinbild/bild"&bilder(0,post)&".jpg'>"
    
Next
end if
Rs.Close
Set Rs = Nothing

%>
```

Men när den slumpar så kan samma bild komma två ggr och det vill inte jag utan alla 5 ska vara olika. 
Hur fixar man det?

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

## #13 — LarsG, 2002-04-05T17:39Z

```
<% 
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("community.mdb")

SQL = "Select id from members where bild = 'bild_yes'"

Randomize
Set RS = oConn.Execute(SQL)
if  not rs.eof then
    bilder = rs.getrows()
    antalBilder = ubound(bilder,2) + 1
    For i = 0 to 4
          if i = antalBilder then exit for
        post = Int(RND*(antalBilder - i))
	Response.write "<img src='krypinbild/bild"&bilder(0,post)&".jpg'>"
                bilder(0,post) = bilder(0,antabilder-i)
Next
end if
Rs.Close
Set Rs = Nothing

%>
```

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

## #14 — ampy, 2002-04-05T18:00Z

Nu får jag:

Felaktigt matrisindex: '\[number: -1\]' 

på raden som är fetare:

```
<% 
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("community.mdb")

SQL = "Select id from members where bild = 'bild_yes'"

Randomize
Set RS = oConn.Execute(SQL)
if  not rs.eof then
    bilder = rs.getrows()
    antalBilder = ubound(bilder,2) + 1
    For i = 0 to 4
          if i = antalBilder then exit for
        post = Int(RND*(antalBilder - i))
	Response.write "<img src='krypinbild/bild"&bilder(0,post)&".jpg'>"
                [b]bilder(0,post) = bilder(0,antabilder-i)[/b]
Next
end if
Rs.Close
Set Rs = Nothing

%>
```

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

## #15 — LarsG, 2002-04-05T18:09Z

En felstavning

```
bilder(0,post) = bilder(0,antalbilder-i)
```

Om du har option explicit överst på sidan och dimmar alla variabler så upptäcker du sådana fel enklare

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

## #16 — ampy, 2002-04-05T18:14Z

Nu får jag detta felmeddelande:

Felaktigt matrisindex: '\[number: 7\]' 

på samma rad.

Får även det felmeddelande om jag ändrar antalbilder till antalBilder på den raden.

Jag testade antalBilder för att det är med stort B på de andra ställerna.

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

## #17 — LarsG, 2002-04-05T18:42Z

så här borde det bli 

```
bilder(0,post) = bilder(0,antalbilder-i-1)
```

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

## #18 — ampy, 2002-04-05T18:45Z

Tack så mycket  :birp 

Nu fungerar det!

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

## #19 — Lazerzubb, 2003-01-06T14:48Z

Testade och fick det inte till att funka, två bilder visades men inte de resterande 3, och hur gör jag om jag vill slumpa ut 7 bilder

Microsoft VBScript runtime error '800a0009' 

Subscript out of range: '\[number: -1\]' 

/index4.asp, line 16 

```
<html>
<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=databas.mdb" 

SQL = "SELECT picURL FROM Gallery"

Randomize
Set RS = Connect.Execute(SQL)
if  not rs.eof then
    bilder = rs.getrows()
    antalBilder = ubound(bilder,2) + 1
    For i = 0 to 4
          if i = antalBilder then exit for
        post = Int(RND*(antalBilder - i))
	Response.write "<img src='images/thumb/"&bilder(0,post)&"'>"
                bilder(0,post) = bilder(0,antabilder-i)
Next
end if
Rs.Close
Set Rs = Nothing
%>
```

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

## #20 — LarsG, 2003-01-06T14:53Z

Du använder olika namn för din array.

thumbURL och bthumbURL

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/40921-slumpa-fram-5-olika-bilder  
Nästa sida: https://www.webforum.nu/amne/asp/40921-slumpa-fram-5-olika-bilder/page2.md
