Avatar billede radda Nybegynder
23. august 2004 - 00:32 Der er 7 kommentarer og
1 løsning

random rs

Hej

Jeg har ledt meget rundt omkring, men løber hele tiden panden mod muren ... håber på lidt venlig hjælp ...

kan jeg omskrive følgende kode, så den giver mig foredragene i en tilfældig orden ...

<%
kat_id=request.querystring("kategori")

fkSQL = "SELECT foredrag_FK FROM foredragKategori WHERE kategori_fk ="&kat_id
set fkRS = conn.execute(fkSQL)

do until fkRS.EOF
foredragID = fkRS("foredrag_FK")
strSQL="SELECT titel, undertitel, id FROM foredrag WHERE id="&foredragID & " and vis='ja'"
set visrs=conn.execute(strSQL)
%>

<table border="0" cellspacing="1" cellpadding="3" >
<tr>
<% do until visrs.EOF %>
<td><a href="default.asp?p_id=6&foredrag=<%=visRs("id")%>&kategori=<%=kat_id%>"><%=lavtegn(visRs("titel"))%></a><br> - <i><%=lavtegn(visRs("undertitel"))%></i></td>

<% visrs.movenext
loop %>
</tr>
</table>
   
<% fkRS.movenext
loop %>
<%
conn.close
%>

Håber på lidt hjælp
venligst
R
Avatar billede eagleeye Praktikant
23. august 2004 - 00:34 #1
Hvilken database bruger du?
Avatar billede radda Nybegynder
23. august 2004 - 00:36 #2
access 2003
Avatar billede eagleeye Praktikant
23. august 2004 - 00:38 #3
Har du i tabllen foredrag  en autonummer kolonne?
Avatar billede cillas Nybegynder
23. august 2004 - 00:38 #4
Er der nogen speciel grund til du gerne vil have dem ud i en tilfældig orden hver gang?

Fordi umiddelbart kan jeg kun komme i tanke om noget ala at lave en case løsning hvor du for hver kolonne laver en sortering, altså at case 1 er efter titel, case 2 er efter id, og så laver en math.random og vælg case ud fra det

~C
Avatar billede radda Nybegynder
23. august 2004 - 00:40 #5
ja - jeg har en id

1 - titel - undertitel
2 - titel - undertitel
Avatar billede radda Nybegynder
23. august 2004 - 00:41 #6
cillas:
jeg har en liste med foredrag, hvor jeg er ked af, at de som først er tastet ind i min db listet først i den lange liste.
Avatar billede eagleeye Praktikant
23. august 2004 - 00:43 #7
det jo faktisk den føste SQL sætning som skal sortere random så vidt jeg kan se den anden henter et fordrag af gangen.

så prøv at rette:

fkSQL = "SELECT foredrag_FK FROM foredragKategori WHERE kategori_fk ="&kat_id
set fkRS = conn.execute(fkSQL)

Til:

randomize
R=clng(100000*rnd)
fkSQL = "SELECT foredrag_FK FROM foredragKategori WHERE kategori_fk ="&kat_id & " ORDER BY rnd(-(ID)*" & R & ")"
set fkRS = conn.execute(fkSQL)
Avatar billede radda Nybegynder
23. august 2004 - 00:46 #8
eagleeye ... du er for hård ... det var lige og så nøjagtig det jeg er ude efter ... mange tak for hjælpen

hep
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester