webForumDet fria alternativet

Random värde från databas.

ASP

5 svar · 484 visningar · startad av Brimba

Medlem sedan dec. 19995 874 inlägg
Frågan#1

Hej!

Jag är lite snurrig nu.
Men hur får man ut om man har en tabell som är uppbyggd tex så här:

ID Namn
23 Test1
25 Test2
118 Test3

Så finns det altså 3st poster i databasen.
Det jag vill är att slumpa ut ett av dessa värderna så lixom om den slumpar ut 25 så skall man få ut värder Test2.

Tack!

Mvh
Patrik
aka Brimba

Medlem sedan dec. 19998 577 inlägg
#2

... oki... då skall vi se...:
först räknar du antalet poster:
SQL = "Select count(*) AS Count_poster from tabell"
Set RS = Databas.Execute(SQL)

Sen väljer du en post:
Randomize
post = Int((rnd*RS("count_poster"))+1)-1

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

'skriv din egen DSN
RSdbase.open SQL, "dsn=databas"

'flytta sig till posten
RSdbase.Move post

'hämta kolumnen
get_post = RSdbase("namn")

...så där... detta borde funka... ändra det som passar din databas, skall allt ordna sig...

------------------
MVH / Vide
Min hemsida:webeye.nu

[Redigerat av Vide den 15 feb 2000]

Medlem sedan dec. 19995 874 inlägg
#3

Ehh..
Jag gjorde så här:

		<%	
			Set Connection = Server.CreateObject("ADODB.Connection")
			Connection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=d:\dmab\internet.mdb"
			SQL = "Select count(*) AS count_poster from tabRandom"
			Set RS = Connection.Execute(SQL) 
	
			Randomize
			post = Int((rnd*RS("count_poster"))+1)-1 

			'flytta sig till posten
			RS.Move post
		%>

Fungerade inte, vad är fel?

Mvh
Patrik
aka Brimba

Medlem sedan dec. 19995 874 inlägg
#4

Sen skriver jag bara ut det så här:

		<A HREF="<%= RS("httpURL")%>">
				<IMG SRC="<%= RS("bildURL")%>" border="0" width="480" height="60">
			</A>
Medlem sedan dec. 19995 874 inlägg
#5

Man tycker ju att det borde finnas tex

SQL = "SELECT rnd(*) FROM tabRandom"

Så väljer den en post ut tabellen.

Finns det verkligen inget sånt kommando?

Mvh
Patrik
aka Brimba

Medlem sedan dec. 19995 874 inlägg
#6

Hej igen!

Jag löste det :)

		<%	
			Set Connection = Server.CreateObject("ADODB.Connection")
			Connection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=d:\dmab\internet.mdb"
			SQL = "Select * FROM tabRandom"
			RStemp = UBOUND(Connection.Execute(SQL).GetRows(),2)+1 
	
			Randomize
			post = Int(RND*RStemp)
			Set RS = Connection.Execute(SQL)

			For s = 1 to post
			RS.MoveNext
			Next

		%>

			<A HREF="<%= RS("httpURL")%>">
				<IMG SRC="<%= RS("bildURL")%>" border="0" width="480" height="60">
			</A>

Det var ju roligt för mig :)

Mvh
Patrik
aka Brimba

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)