Avatar billede bms Nybegynder
29. marts 2001 - 10:59 Der er 12 kommentarer og
1 løsning

Sorter i tabeller

Ups - havde lige et spørgsmål mere!

En række links sorteres efter dato og relevans, eksempelvis sådan:
3/29/2001 - Jubii
3/29/2001 - Yahoo
2/28/2001 - Google
osv...

Kan man gøre det sådan at når der er kan være max 25 links under hinanden i samme kolonne (på htmlsiden) - når der er flere end 25 smides de ældste i næste kolonne hvor der kan være plads til de ældste 25 links?

Avatar billede keysersoze Ekspert
29. marts 2001 - 11:05 #1
tænker du på noget paging, hvor man kan få vist maks 25 links pr. side eller?
Avatar billede bms Nybegynder
29. marts 2001 - 11:11 #2
Ikke pr. side - men at der kan være 25 links under hinanden i samme kolonne, og 25 i næste.
Sådan at der i alt vises max 50 links.

Se eksempel her:
http://hjem.get2net.dk/unseen/temp.htm

Håber du kan hjælpe mig!
Avatar billede keysersoze Ekspert
29. marts 2001 - 11:15 #3
du skal lave to sql-sætninger...

en det hedder

select top 25 order by dato desc

og en der hedder

select top 25 order by dato asc

den ene udvælger de 25 nyeste - den anden de 25 ældste
Avatar billede ldanielsen Nybegynder
29. marts 2001 - 11:17 #4
Rec er dit recordset, OK?


Response.Write \"<table><tr valign=top><td>\"
c = 0
Do while not Rec.EOF
  c = c+1
  Response.write Rec(\"Link\")
  if c=25 then
    c = 0
    Response.Write \"</td><td>\"
  end if
  Rec.Movenext
loop
Response.Write \"</td></tr></table>\"
Avatar billede bms Nybegynder
29. marts 2001 - 11:51 #5
Jeg kan ikke liiiige.... Linksene bliver godt nok midt i kolonner men jeg får fejl.Måske du kan greje det hvis du ser det her:

ADODB.Recordset error \'800a0bcd\'

Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

links.asp, line 43

Selve koden:

<% Set RS = server.CreateObject(\"ADODB.connection\")
RS.open ConnString
SQL = \"SELECT * FROM Links ORDER by Dato desc;\"
Set RS = RS.Execute(SQL)
do until RS.eof
    Url=RS(\"Url\")
    Dato=RS(\"Dato\")
   
%>
  <table>
    <tr valign=\"top\">
      <td>
        <%c = 0
Do until RS.EOF
  c = c+1
  Response.write RS(\"Url\")
  Response.write \"<br>\"
  if c=10 then
    c = 0
    Response.Write \"</td><td>\"
  end if
  RS.Movenext
loop
%>
      </td>
    </tr>
  </table>
     
<%  RS.MoveNext
    Loop
RS.Close
Set RS = Nothing
%>
Avatar billede keysersoze Ekspert
29. marts 2001 - 12:21 #6
hvorfor ikke bare tage en top 25 og køre loop på dem? det er da meget lettere...
Avatar billede bms Nybegynder
29. marts 2001 - 13:21 #7
Så - jeg fik det selv til at virke - nu mangler der bare at der max må vises x antal links.

Som det ser ud nu kommer der jo bare ENDNU en kolonne hvis der fx er 21 links (10 pr. kolonne)...

Koden:
<%c = 0
Do until RS.EOF
Url=RS(\"Url\")
%>
<a href=<%=Url%>><%=Url%></a>
<% c = c+1
  Response.write \"<br>\"
  if c=10 then
    c = 0
    Response.Write \"</td><td>\"
  end if
  RS.Movenext
loop
RS.Close
Set RS = Nothing
%>

(jeg ved den er lidt rodet, men jeg kan bedst gennemskue variabler)

Håber I kan hjælpe. Pointet går til ham der kan sætte et max på antal viste link!
Avatar billede ldanielsen Nybegynder
29. marts 2001 - 15:55 #8
Sådan; let men fodformet:
for i = 1 to 25
if not RS.EOF
Url=RS(\"Url\")
%>
<a href=<%=Url%>><%=Url%></a>
<% c = c+1
  Response.write \"<br>\"
  if c=10 then
    c = 0
    Response.Write \"</td><td>\"
  end if
  RS.Movenext
end if
next
Avatar billede ldanielsen Nybegynder
29. marts 2001 - 15:56 #9
Det kan altså gøres meget bedre, jeg bliver helt flov :o(

Vis mig lige din SQL, og fortæl mig hvilken database du bruger
Avatar billede keysersoze Ekspert
29. marts 2001 - 16:37 #10
hvad er der i vejen med select top 25???

så slipper man da for en masse forviklede forviklinger!
Avatar billede ldanielsen Nybegynder
29. marts 2001 - 16:39 #11
Enig!!
Avatar billede bms Nybegynder
07. april 2001 - 11:40 #12
Jeg droppede det helt! Ellers mange tak!
Avatar billede ldanielsen Nybegynder
07. april 2001 - 21:13 #13
Øh, hvordan var det liiige at vi ikke gjorde os fortjent til de 30 p ???
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