Hur gör man det enklast? Jag kollade lite i manualen men hittade inget att gå på. Tips fås gärna
------------------
Daniel Olsson - Webbutvecklare
Personlig sida
KjAM Sekten Community
/N
5 svar · 220 visningar · startad av nanne
Hur gör man det enklast? Jag kollade lite i manualen men hittade inget att gå på. Tips fås gärna
------------------
Daniel Olsson - Webbutvecklare
Personlig sida
KjAM Sekten Community
/N
man kan ju alltid kolla hur många poster det finns, sen randomizer med det talet som max, och sen loop:a rs.movenext så många gånger som slumptalet blev.
------------------
/bohlin
För att citera en TV serie (kommer inte ihåg vilken) "Man kan göra så. Men det är inte rätt" Det känns iaf inte rätt. Luktar fel liksom att man måste loopa sig fram till rätt post. Näää.
------------------
Daniel Olsson - Vävkonsult
Personlig sida
KjAM Sekten Community
/N
Här är en kodsnutt som jag har gjort för att slumpa fram en länk ur min databas:
<%
SQL = "select count(*) AS count_lankar from lankar"
Set RS_count_lankar = databas.Execute(SQL)
Randomize
vilkenlank = Int(rnd*RS_count_lankar("count_lankar"))-1
SQL = "Select * from lankar"
Set RSdbase = Server.CreateObject("ADODB.Recordset")
RSdbase.open SQL, Session("dbasepath")
RSdbase.Move vilkenlank
url = RSdbase("lank")
lank_namn = RSdbase("namn")
lank_beskriv = RSdbase("beskrivning")
%>
... Alltså kollar jag först hur många länkar som finns... slumpar fram ett tal utifrån det... sen öppnar jag tabellen i ett recordset och hämtar posten som slumptalet tog fram...
------------------
MVH / Vide
Min hemsida:webeye.nu
[Redigerat av Vide den 03 apr 2000]
Hur gör jag för att slumpa fram flera "länkar" som i detta fall?
Typ om jag vill ha 6 slumvalda rader från databasen, hur? :p
Lite loopar och så
<%
Dim links()
Dim counter,i,found
SQL = "select count(*) AS count_lankar from lankar"
Set RS_count_lankar = databas.Execute(SQL)
Randomize
counter = 0
do
link = Int(rnd*RS_count_lankar("count_lankar"))-1
found = 0
for i = 0 to counter - 1
if links(i) = link then
found = 1
exit for
end if
next
if found = 0 then
links(counter) = link
counter = counter -- 1
end if
if counter = 6 then
exit do
end if
loop
SQL = "Select * from lankar"
Set RSdbase = Server.CreateObject("ADODB.Recordset")
RSdbase.open SQL, Session("dbasepath"),adLockPessimistic,adOpenKeyset
for i = 0 to 5
RSdbase.Move links(i)
url = RSdbase("lank")
lank_namn = RSdbase("namn")
lank_beskriv = RSdbase("beskrivning")
'gör något med länk
next
%>
Det är inte testat på något vis men du kan väl hämta någon ide i alla fall.
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 18 mar 2001]
[Redigerat av LarsG den 05 sep 2001]