31. december 2003 - 09:59Der er
9 kommentarer og 1 løsning
Random function
Hej Eksperter
Jeg har en randomfunction der virker fint til at udskrive 1 post fra en tabel.
Kan man ik fixe den så den kan udskrive nogle flere.. Jeg vil eksempelvis gerne kunne udskrive 10 poster, men det skal ikke være de samme 10 hver gang :o)
------------------------------------ <% o = 0 Set RS_find_onlinegame = Server.CreateObject("ADODB.RecordSet") RS_find_onlinegame.open "Select * From [onlinegames_spil] Order by id desc" , Conn_sites do while not RS_find_onlinegame.EOF idlist_o = idlist_o & "," & RS_find_onlinegame("id") o = o + 1 RS_find_onlinegame.movenext loop idlist_o = mid(idlist_o,2) idarr_o = Split(idlist_o,",") randomize vinderID_onlinegame = idarr_o(Int(rnd * (Ubound(idarr_o)+1))) %> <% Set rs_onlinegames = Server.CreateObject("ADODB.RecordSet") rs_onlinegames.open "Select * From [onlinegames_spil] where id = " & VinderID_onlinegame & "" , Conn_sites %> <img src="../pictures/onlinegames/<%=rs_onlinegames("id")%>.gif" border="0"><br> <font face="verdana" size="1"><%=rs_onlinegames("titel")%></font> ------------------------------------
Jeg har engang lavet denne som kan finde X antal tilfældige..:
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("abb.mdb") Set Conn = Server.CreateObject("ADODB.Connection") Set rs = Server.CreateObject("ADODB.RecordSet") Conn.Open strDSN
Rs.Open "SELECT * FROM randomtabel", Conn,1,3 antalRandom = 10 inDB = rs.RecordCount If inDB >= antalRandom then Randomize timer newId = Int (rnd*inDB) strIndex = "," & newid & "," indexFound = 1 Do while indexFound < antalRandom Do Newid = Int (rnd*inDB) Loop while inStr(strIndex,"," & newid & ",") > 0 strIndex = strIndex & newid & "," indexFound = indexFound + 1 Loop strIndex = mid (strIndex,2,len(strIndex)-2) myArr=split(strIndex,",",-1) For i = Lbound(myArr) to Ubound(myArr) rs.move myArr(i),1
Hey mester.. Godt at have dig oppe så tidligt ;o) Jeg bruger Access :o)
Som du kan se kalder jeg min database ved at skrive Conn_sites - Hvordan putter jeg det ind i det du har lavet, så jeg ik skal kalde databasen fra selve siden?
Set rs = Server.CreateObject("ADODB.RecordSet") Conn.Open strDSN
Rs.Open "Select * From [onlinegames_spil]", Conn_site,1,3 antalRandom = 10 inDB = rs.RecordCount If inDB >= antalRandom then Randomize timer newId = Int (rnd*inDB) strIndex = "," & newid & "," indexFound = 1 Do while indexFound < antalRandom Do Newid = Int (rnd*inDB) Loop while inStr(strIndex,"," & newid & ",") > 0 strIndex = strIndex & newid & "," indexFound = indexFound + 1 Loop strIndex = mid (strIndex,2,len(strIndex)-2) myArr=split(strIndex,",",-1) For i = Lbound(myArr) to Ubound(myArr) rs.move myArr(i),1 %> <img src="../pictures/onlinegames/<%=rs("id")%>.gif" border="0"><br> <font face="verdana" size="1"><%=rs("titel")%></font> <% next end if Rs.Close
Jeg er vildt i tvivl om hvad det kan være - Vil gøre hvad som helst hvis du hjælper mig !!!!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.