---
title: "Slumpa"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/13995-slumpa"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "hacktheplanet"
published: "2002-01-23T10:51:00.000Z"
updated: "2002-01-25T18:23:00.000Z"
replies: 25
views: 554
page: 1
pages: 2
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/13995-slumpa"
---

# Slumpa

_Sida 1 av 2._

## #1 — hacktheplanet, 2002-01-23T10:51Z

Hur gör jag om jag vill slumpa fram 6 st bilder ur kolumnen bild ur databasen utan och visa samma bild??

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

## #2 — hacktheplanet, 2002-01-23T11:11Z

hittade det här men det slumpas fram ibland samma bilder!!!

```
<%
  Response.Buffer = True

  Function Show()
    Randomize
    RandNum = Int(Rnd * Ialt) + 1
    Record.MoveFirst
    For i = 1 to RandNum - 1
      Record.MoveNext
    next 
    Response.Write "<a href='krypin.asp?checkid=" & Record("id") & "'><img src='" & Record("bild") & "' alt='" & Record("username") & "' border = '0' width= '69' height= '87'></a>"
  end function

   
  Set Rs = Server.CreateObject("ADODB.Connection")
  DBPath = "DBQ=" & server.mappath("database/members.mdb")
  Rs.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

  Sql = "Select count(*) as Found from members where not bild = 'Bilder\Medlemmar\ingen.gif'"
  Set Record =  Rs.Execute(Sql) 

  Ialt = Record("found")
 
  Sql = "Select * from members where not bild = 'Bilder\Medlemmar\ingen.gif'"
  Set Record =  Rs.Execute(Sql) 
%>
<%  Response.Write Show() %>
<%  Response.Write Show() %>
<%  Response.Write Show() %>
<%  Response.Write Show() %>
<%  Response.Write Show() %>
<%  Response.Write Show() %>
```

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

## #3 — hacktheplanet, 2002-01-23T14:05Z

nån som kan hjälp mig :(

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

## #4 — PatrikB, 2002-01-23T15:38Z

kika in detta [script](http://script.webforum.nu/wf/Forum1/HTML/000104.html)

Kanske kan vara ngt för dig.

cya,
PatrikB

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

## #5 — hacktheplanet, 2002-01-23T16:21Z

hjälpte inte :-(

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

## #6 — PatrikB, 2002-01-23T17:27Z

Kan bero på att du uppdaterar sidan för snabbt och random funktionen räknar "på samma utgångsläge".

Prova att uppdatera med kanske en 10 sek eller mer emellan.

cya,
PatrikB

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

## #7 — hacktheplanet, 2002-01-23T17:38Z

fattar inget utav scripten???

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

## #8 — hacktheplanet, 2002-01-23T17:40Z

kan du göra om den scripten ovan snälla :(

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

## #9 — PatrikB, 2002-01-23T18:25Z

Anledningen att ditt script INTE visar olika bilder är att du ställer dig alltid på första position och sedan i loopen kör .MoveNext vilket ALLTID kommer att visa samma bilder, dvs i den ordning som de ligger i databasen.

oh, lite OT men en funktion ska returnera ett värde en sub "printar" ett värde eller gör något annat där man inte behöver ett returnerat värde.

Detta kanske funkar:

```
<%
Sub Show(iImgToShow)
	If Not Record.EOF Then Record.MoveFirst

	For N = 1 TO iImgToShow
		Randomize
		RandNum = Int(Rnd * Ialt)

		Record.Move RandNum

		Response.Write "<a href='krypin.asp?checkid=" & Record("id") & "'><img src='" & Record("bild") & "' alt='" & Record("username") & "' border = '0' width= '69' height= '87'></a>"
	Next
End Sub

Set Rs = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("database/members.mdb")
Rs.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

Sql = "Select count(*) as Found from members where not bild = 'Bilder\Medlemmar\ingen.gif'"
Set Record = Rs.Execute(Sql) 

Ialt = Record("found")

Sql = "Select * from members where not bild = 'Bilder\Medlemmar\ingen.gif'"
Set Record = Rs.Execute(Sql) 

Call Show(6)
%>
```

cya,
PatrikB

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

## #10 — PatrikB, 2002-01-23T18:41Z

eller:

```
strSQLimg = "SELECT [id], username, bild FROM members WHERE NOT bild = 'Bilder\Medlemmar\ingen.gif'"

Set objConn = Server.CreateObject("ADODB.Connection")
	objConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("database/members.mdb")
	
		Set objRSimg = objConn.Execute(strSQLimg)
		
		If Not objRSimg.EOF Then
			varArray = objRSimg.GetRows()
		End If
		
		Set objRSimg = Nothing
		
	objConn.Close
Set objConn = nothing

Set objArray = New clsArray

	With objArray
		.ArrayType = 2 '## -- a 2-dimensional array are set to be used --
		.Positions = 2 '## -- 3 positions will be created on every index. positions start count at 0 --
		.SetArray varArray

		'## -- get randomly data as array --
		varImages = .Random(6)
	End With

Set objArray = Nothing

'## -- show random images --
If IsArray(varImages) Then
	For N = 0 TO UBound(varImages,2)
		"<a href='krypin.asp?checkid=" & varImages(0,N) & "'><img src='" & varImages(2,N) & "' alt='" & varImages(1,N) & "' border = '0' width= '69' height= '87'></a>"
	Next
End If
%>
<!--#INCLUDE FILE=clsArray.asp"-->
```

borde funka rätt bra denna oxå :e om du använder dig av filen clsArray.asp som ligger i länken jag gav ovan .... script förslaget :)

cya,
PatrikB

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

## #11 — hacktheplanet, 2002-01-24T12:52Z

har provat ingen av dom funkar får felmess på den jag inkluderat filen
/clsArray.asp, line 6
Class clsArray

det andra scriptet slumpar fram samma bild med bara 3 bilder!! :(

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

## #12 — PatrikB, 2002-01-24T14:34Z

har du lagt inkluderings filen utanför all övrig kod. Antingen först eller sist i dokumentet bör en inkludering av funktions-filer göras.

cya,
PatrikB

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

## #13 — PatrikB, 2002-01-24T14:35Z

glömde en sak,

Fel mess??

cya,
PatrikB

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

## #14 — hacktheplanet, 2002-01-24T14:49Z

nu får jag:

```
Kompileringsfel i Microsoft VBScript (0x800A0400)
Programsats förväntas.
/slumpa.asp, line 34
"<a href='krypin.asp?checkid=" & varImages(0,N) & "'><img src='" & varImages(2,N) & "' alt='" & varImages(1,N) & "' border = '0' width= '69' height= '87'></a>"
```

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

## #15 — jboy_87, 2002-01-24T15:13Z

```
reponse.write "<a href='krypin.asp?checkid=" & varImages(0,N) & "'><img src='" & varImages(2,N) & "' alt='" & varImages(1,N) & "' border = '0' width= '69' height= '87'></a>"
```

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

## #16 — hacktheplanet, 2002-01-24T15:29Z

nu får jag 

```
Kompileringsfel i Microsoft VBScript (0x800A03EA)
Syntaxfel
/clsArray.asp, line 6
Class clsArray
```

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

## #17 — PatrikB, 2002-01-24T16:38Z

vart någonstans har du inkluderat filen?

cya,
PatrikB

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

## #18 — hacktheplanet, 2002-01-24T16:58Z

längst ner på sidan!!!

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

## #19 — hacktheplanet, 2002-01-24T17:06Z

det e nått fel på det här:

```
Class clsArray
	Private g_varArray ' As Variant
	Private g_bolArrayType ' As Boolean
	Private g_intPositions ' As Integer
	Private g_bolCreated ' As Boolean
```

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

## #20 — PatrikB, 2002-01-24T17:20Z

vilken VB Script Engine har du??
du måset ha ngn av v. 5.x ... e inte riktigt säker vilken, men ngn av 5:orna ska det vara eller bättre.

Eller?
har du glömt att stänga någon if-sats, loop eller dylikt. Det kan oxå ge detta felmeddelande.

cya,
PatrikB

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/13995-slumpa  
Nästa sida: https://www.webforum.nu/amne/asp/13995-slumpa/page2.md
