/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Næste record i Detaljeside - Hvordan ?
Fra : Rune Baess


Dato : 04-10-01 22:35

Hej

Jeg har et formodentligt simpelt problem:

Jeg har en Detaljeside der trækker data fra en bestemt post
v.h.a. postens ID á la:
detaljeside.asp?id=123
- og med en efterfølgende SQL sætning á la:
strid = Request.Querystring("id")
SQL = "SELECT * ... WHERE id = (" & strid & ")"
o.s.v.
--

- Nu vil jeg gerne have et link i bunden af siden til den næste post i
tabellen.

Min første ide var at gøre det v.h.a.
<a href="detaljeside.asp?id=<% = strid + 1 %> > Næste</a>
Men den næste post kunne jo være slettet, så det duer ike.

Så tænkte jeg på ADO's "rs.movenext" - men den er jo begrænset af
SQLsætningens "WHERE" og virker derfor heller ikke.

Så hvad gør man i denne situation ??? Nogen forslag ???

Rune




 
 
Jesper Nielsen (04-10-2001)
Kommentar
Fra : Jesper Nielsen


Dato : 04-10-01 23:02

> Så hvad gør man i denne situation ??? Nogen forslag ???

Du skal bruge paging, som du kan læse mere om på
http://www.asp.dk/articles.asp?mode=show_article&tech_id=1&article_id=50

/jesper/



Rune Baess (04-10-2001)
Kommentar
Fra : Rune Baess


Dato : 04-10-01 23:30

> Du skal bruge paging, som du kan læse mere om på
> http://www.asp.dk/articles.asp?mode=show_article&tech_id=1&article_id=50
>

Det er jo en fin løsning hvis man har en side med søgeresultater, men
HVORDAN vælger man en specifik post fra starten, når man ikke bruger en
WHERE clause??
(sætter man "rs.PageSize = 1" får man stadig en "tilfældig" post...)

Rune



Christian Estrup (05-10-2001)
Kommentar
Fra : Christian Estrup


Dato : 05-10-01 11:17

Hvad med...:

strid = request.querystring("id")
sql = "SELECT TOP 2 * ... WHERE id>=" & strid & " ORDER BY id"
set rs = conn.execute (sql)
'udskriv posten
....
rs.MoveNext
if not rs.EOF then
'udskriv link til næste post, hvis id=rs("id")
else
'Hvis vi allerede er ved den sidste post, viser vi i stedet link til den
første (ignorér, hvis du ikke vil have det sådan)
sql = "SELECT TOP 1 * ... WHERE id<>" & strid & " ORDER BY id"
set rs = conn.execute (sql)
'Tag højde for, at den i querystring valgte post måske er den eneste i
tabellen
if not rs.EOF then
'udskriv link til næste post, hvis id=rs("id")
end if
end if

"Rune Baess" <rune@(ingenspamtak)baess.dk> wrote in message
news:7A4v7.1927$uQ.262985@news010.worldonline.dk...
> Hej
>
> Jeg har et formodentligt simpelt problem:
>
> Jeg har en Detaljeside der trækker data fra en bestemt post
> v.h.a. postens ID á la:
> detaljeside.asp?id=123
> - og med en efterfølgende SQL sætning á la:
> strid = Request.Querystring("id")
> SQL = "SELECT * ... WHERE id = (" & strid & ")"
> o.s.v.
> --
>
> - Nu vil jeg gerne have et link i bunden af siden til den næste post i
> tabellen.
>
> Min første ide var at gøre det v.h.a.
> <a href="detaljeside.asp?id=<% = strid + 1 %> > Næste</a>
> Men den næste post kunne jo være slettet, så det duer ike.
>
> Så tænkte jeg på ADO's "rs.movenext" - men den er jo begrænset af
> SQLsætningens "WHERE" og virker derfor heller ikke.
>
> Så hvad gør man i denne situation ??? Nogen forslag ???
>
> Rune
>
>
>



Rune Baess (07-10-2001)
Kommentar
Fra : Rune Baess


Dato : 07-10-01 19:56


"Christian Estrup" <ces@visualcom.dk> wrote in message
news:3bbd8860$0$270$edfadb0f@dspool01.news.tele.dk...
> Hvad med...:
>
> strid = request.querystring("id")
> sql = "SELECT TOP 2 * ... WHERE id>=" & strid & " ORDER BY id"
> set rs = conn.execute (sql)
> 'udskriv posten


Ja selvfølgelig - man skal bare vælge begge poster ... - godt tænkt.

Tak for hjælpen.

Rune



Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408857
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste