|
| næste id i rækken Fra : Dj Uncas |
Dato : 16-02-05 19:57 |
|
hejsa
jeg har et nyhedssystem hvor brugeren først ser en tabel med titler på alle
nyhedsartikler, og derefter en seperat side når de klikker på en titel.
På den side hvor selve artiklen vises kunne jeg godt tænke mig en knap der
gik til næste, og en til forrige artikel. nyhederne er gemt i en MySQL db,
og har nøglen 'id' der er nummerisk. Hvad kan jeg gøre?
Jeg har tænkt noget som dette, men jeg aner ikke hvordan jeg skal få det til
at virke:
<input type="button" onclick="window.location=/news/article.asp?id=<%=
rs("id") +1 %>" />
| |
Lars Hoffmann (16-02-2005)
| Kommentar Fra : Lars Hoffmann |
Dato : 16-02-05 20:35 |
|
Dj Uncas wrote:
> <input type="button" onclick="window.location=/news/article.asp?id=<%=
> rs("id") +1 %>" />
Det er da en begyndelses, men du skal huske at du på et eller andet tidspunkt
kommer til den sidste nyhed og derfor ikke skal have et link til den næste.
Hvorfor gør du det med javascript, hvad er der galt med et ganske almindeligt
link:
<a href="/news/article.asp?id=<%=rs("id") + 1 %>">Næste</a>
Du skal måske også passe på med at lave et sådant link hvis du ikke er 100%
sikker på at der ikke er huller i dine id'er. Hvad sker der f.eks hvis du
sletter en artikkel? så kommer der måske hul i dine id'er. Det vil nok være en
god ide at lave en lille forspørgsel til databasen for at finde det næste id:
(utestet kode)
<%
dim SQL
dim rsNaeste
SQL = "SELECT min(id) as naesteID FROM news where id >" & rs.fields("id")
set rsNaeste = MITCONNECTIONOBJECT.execute(SQL)
if not rsNaeste.eof then
response.write("<a href=""?id=" & rsNaeste.fields("naesteID") & """>Næste</a> ")
end if
%>
Det vil løse begge dine problemer.
Med venlig hilsen
Lars Hoffmann
| |
Dj Uncas (16-02-2005)
| Kommentar Fra : Dj Uncas |
Dato : 16-02-05 23:31 |
|
> Du skal måske også passe på med at lave et sådant link hvis du ikke er
> 100% sikker på at der ikke er huller i dine id'er. Hvad sker der f.eks
> hvis du sletter en artikkel? så kommer der måske hul i dine id'er. Det vil
> nok være en god ide at lave en lille forspørgsel til databasen for at
> finde det næste id:
Du har helt ret i alt hvad du siger, og koden virker også godt nok, indtil
den når til sidste record i db'en. Linket står der nemlig stadig, dog med
?id=(tom querystring).
Grunden til javascript er at det ser pænere ud knapper, efter jeg har stylet
dem lidt med css...
| |
lars@intercambiodvd.~ (17-02-2005)
| Kommentar Fra : lars@intercambiodvd.~ |
Dato : 17-02-05 08:46 |
|
Dj Uncas wrote:
> Du har helt ret i alt hvad du siger, og koden virker også godt nok,
indtil
> den når til sidste record i db'en. Linket står der nemlig stadig,
dog med
> ?id=(tom querystring).
det må du kunne klare med en if sætning.
> Grunden til javascript er at det ser pænere ud knapper, efter jeg
har stylet
> dem lidt med css...
Så brug en gif der ligner knappen. Javascript bør undgås med mindre
der tilfører en funktionalitet man på andre måder ikke kunne opnå
og som er fundamental for at siden fungerer.
Med venlig hilsen
Lars Hoffmann
| |
Dj Uncas (17-02-2005)
| Kommentar Fra : Dj Uncas |
Dato : 17-02-05 12:23 |
|
>det må du kunne klare med en if sætning.
I Lars' svar, skrev han følgende kodeeksempel:
if not rsNaeste.eof then
response.write("<a href=""?id=" & rsNaeste.fields("naesteID") &
""">Næste</a> ")
end if
Så vidst jeg kan se er det en if-sætning, men det virker stadig ikke helt
efter hensigten.
Tilgengæld skal jeg nok droppe knapperne..
| |
lars@intercambiodvd.~ (17-02-2005)
| Kommentar Fra : lars@intercambiodvd.~ |
Dato : 17-02-05 15:13 |
|
Dj Uncas wrote:
> >det må du kunne klare med en if sætning.
>
> I Lars' svar, skrev han følgende kodeeksempel:
>
> if not rsNaeste.eof then
> response.write("<a href=""?id=" & rsNaeste.fields("naesteID") &
> """>Næste</a> ")
> end if
>
> Så vidst jeg kan se er det en if-sætning, men det virker stadig
ikke helt
> efter hensigten.
Ja det er /en/ if, sætning, men ikke den du har brug for
prøv med:
if rsNaeste.fields("naeste") = "" then
Med venlig hilsen
Lars Hoffmann
| |
Dj Uncas (17-02-2005)
| Kommentar Fra : Dj Uncas |
Dato : 17-02-05 16:07 |
|
Ja det er /en/ if, sætning, men ikke den du har brug for
prøv med:
if rsNaeste.fields("naeste") = "" then
Okay, det virker hvis jeg skriver
if rsNaeste.fields("naeste") <> "" then
gif med link
else
andet gid, uden link
End If
også den anden vej.. tak for hjælpen!
| |
|
|