---
title: "slumpa fram 5 olika bilder"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/40921-slumpa-fram-5-olika-bilder/page2"
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: 2
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 2 av 3._

## #21 — Lazerzubb, 2003-01-06T14:57Z

Ändrade det till bilder nu, men det visas bara 2 bilder.

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

## #22 — ampy, 2003-01-06T15:02Z

Jag använder inte den där koden längre. Jag använder mig istället av 

```
ORDER BY RAND()
```

i sql-satsen.

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

## #23 — LarsG, 2003-01-06T15:06Z

```
if i = antalBilder then exit for
```

borde vara

```
if i+1 = antalBilder then exit for
```

Vad är problemet nu? 

Jag tappar tråden när du går tillbaks och redigerar dina gamla inlägg.

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

## #24 — Lazerzubb, 2003-01-06T15:10Z

Får samma fel:
Microsoft VBScript runtime error '800a0009' 

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

/index4.asp, line 16 

p.s Redigerar inlägg på gammal vana.

```
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+1 = antalBilder then exit for
        post = Int(RND*(antalBilder - i))
	Response.write "<img src='images/thumbs/"&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/903388

## #25 — LarsG, 2003-01-06T15:15Z

```
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/thumbs/"&bilder(0,post)&"'>"
                bilder(0,post) = bilder(0,anta[b]l[/b]bilder-i)
      Next
end if
Rs.Close
Set Rs = Nothing
```

Ännu en felstavning, du har antabilder.

Använd option explicit och gör dim på alla variabler, så är det lättare att hitta den typen av fel.

Glöm det där jag sa om i + 1

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

## #26 — Lazerzubb, 2003-01-06T15:17Z

Fungerade, men var tvungen att ta bort kodsnutten:                bilder(0,post) = bilder(0,antalbilder-i)

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

## #27 — WebbisNet, 2004-08-12T23:32Z

Jag modifierade detta script och jag fick fram:

```
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source= "& server.MapPath("/db/Inloggning.mdb") & ";"

SQL = "Select picture from tblUsers where not picture='nopic.jpg'"
RStemp = UBOUND(oConn.Execute(SQL).GetRows(),2)+1 

Randomize
Set RS = oConn.Execute(SQL)
  response.write "<table width=""95%""><tr><td align=""center"">"
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 height=""120"" width=""100"" src='/images/users/"&bilder(0,picture)&"'> &nbsp; "
                bilder(0,picture) = bilder(0,antalbilder-i-1)
       

Next
end if
 response.write "</td></tr></table>"
Rs.Close
Set Rs = Nothing
```

Bilderna visas men jag får inte fram nån random, det är samma bilder hela tiden....nån som kan hjälpa????

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

## #28 — solbulle, 2004-08-12T23:51Z

```
Response.write "<img height=""120"" width=""100"" src='/images/users/"&bilder(0,post)&"'>   "
                bilder(0,post) = bilder(0,antalbilder-i-1)
```

/red. med reservation för vad egentligen raden:

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

gör...

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

## #29 — WebbisNet, 2004-08-13T00:07Z

tack, nu fick jag lite rotation.......har funderat på hur jag ska få in alt="&username&" men inte lyckats till 100%

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

## #30 — solbulle, 2004-08-13T00:22Z

```
Response.write "<img height=""120"" width=""100"" src='/images/users/"&bilder(0,post)&"' alt="""&username&""">"
```

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

## #31 — WebbisNet, 2004-08-13T01:41Z

har testat den koden men ingen alt-text dyker fram nu heller, kolla in <https://www.webbisen.com> och håll musen över användarens bild

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

## #32 — solbulle, 2004-08-13T16:34Z

Om du tittar i källkoden ser du att du har en korrekt alt-tagg utskriven, däremot verkar du inte ha något innehåll i variabeln username.
Om du ska ha username på den användare vars bild du visar måste du ju plocka ut det ur databasen det med.

Å lite kod:

```
Set oConn = Server.CreateObject("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source= "& server.MapPath("/db/Inloggning.mdb") & ";"

SQL = "Select picture, username from tblUsers where not picture='nopic.jpg'"
RStemp = UBOUND(oConn.Execute(SQL).GetRows(),2)+1 

Randomize
Set RS = oConn.Execute(SQL)
  response.write "<table width=""95%""><tr><td align=""center"">"
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 height=""120"" width=""100"" src='/images/users/"&bilder(0,post)&"' alt="""&bilder(1,post)&""">"

     ' ???           bilder(0,picture) = bilder(0,antalbilder-i-1)
       

Next
end if
 response.write "</td></tr></table>"
Rs.Close
Set Rs = Nothing
```

Om fältet heter username i din db.

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

## #33 — WebbisNet, 2004-08-13T16:46Z

Det borde jag kollat \*ler\*

Microsoft VBScript runtime error '800a0009' 

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

/default.asp, line 166 

får jag som svar

med Subscript out of range: '\[number: 0\]' stämmer alt-texten i visa källa men ingen text visas när man håller musen över

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

## #34 — solbulle, 2004-08-13T16:53Z

Aj, just ja, det är ju bara en bilderna som slumpas fram... hm...
Vad ska man hitta på då..

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

## #35 — WebbisNet, 2004-08-13T17:17Z

Nu fungerar bildnamnet som alt.....men inget username som det ska vara

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

## #36 — solbulle, 2004-08-13T19:27Z

Nej du, jag tycker att det där borde fungera, den kod jag postade.
Observerade du att även sql-frågan var ändrad?

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

## #37 — WebbisNet, 2004-08-13T20:02Z

såg inte den detaljen, tack för all hjälp, allt funkar perfekt nu....kolla in webbisen.com :-)

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

## #38 — solbulle, 2004-08-13T20:03Z

Strålande!

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

## #39 — WebbisNet, 2004-08-13T20:04Z

hur förhindrar man att se samma bild 2 gånger

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

## #40 — WebbisNet, 2004-08-14T22:13Z

fick detta förslag på pellesoft, men sidan bara blev vit

```
<% 
    Set oConn = Server.CreateObject("ADODB.Connection") 
    oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source= "& server.MapPath("/db/Inloggning.mdb") & ";" 

    strSQL = "SELECT picture, username, visaBild" & vbCrLf & _
             "FROM tblUsers" & vbCrLf & _
             "WHERE not picture='nopic.jpg' and visaBild=true" 

    Set RS = oConn.Execute(strSQL) 
    If rs.eof then 
        Response.Write "Det finns inga bilder..." 
    Else
        Response.Write "<table width=""95%""><tr><td align=""center"">" 
        bilder = rs.getrows() 
        antalBilder = ubound(bilder,2) + 1 

        Count = 6 
        If Count > antalBilder Then
            Count = antalBilder
        End If
        ReDim Shown(Count)

        Randomize 

        For i = 0 to Count
            Do
                Found = False
                post = Int(RND * antalBilder)

                For j = 0 to i - 1
                    If Shown(j) = post Then
                        Found = True
                        Exit For
                    End If
                Next 
            Loop While Found
            Shown(i) = post

            Response.write "<img border=""1"" height=""120"" width=""100"" src=""/images/users/" & bilder(0,post) & """ alt=""" & bilder(1,post) & """>&nbsp; &nbsp;"   
        Next 
        response.write "</td></tr></table>" 
    end if 
    Rs.Close 
    Set Rs = Nothing 
%>
```

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

---

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