Man kan ikke bruge +/- 1 med 100% sikkerhed da der kan være "huller" i ID rækken hvis man slætter/tilføjer billeder. Man må lave to SQL som finde den forrige og næste ID.:
<% set rs = server.CreateObject("ADODB.Recordset") set conn = server.CreateObject("ADODB.Connection") 'Her åbes databasen og den hedder db9.mdb det retter du bare til at passe med din conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db9.mdb")
kat = Request.QueryString("kat")
'find max og min ID SQL = "SELECT max(ID) as maxid, min(ID) as minid FROM billeder WHERE kategori=" & kat
'hendt ID fra querystingen. og hvis ID er tom sæt ID = minID i db'en id = Request.QueryString("id") if id = "" then id = minID
'Find næste og forrige ID SQL = "SELECT TOP 1 ID FROM billeder WHERE ID > " & id & " AND kategori="&kat set rs = Conn.Execute(SQL) if rs.EOF then nesteID = "" else nesteID = rs("ID") end if
SQL = "SELECT TOP 1 ID FROM billeder WHERE UsersID < " & id & " AND kategori="&kat & " ORDER BY UsersID DESC" set rs = Conn.Execute(SQL) if rs.EOF then forrigeID = "" else forrigeID = rs("ID") end if
'Så han man dette ' valgt ID = ID ' Næste ID = nesteID ' Forrige ID = forrigeID ' Føste ID = minID ' Sidste ID = maxID
'UDSKRIV HER
'Her laves Link if Int(minID) = Int(id) then Response.Write "Første " else Response.Write "<a href=""?kat="&kat&"&id=" & minID & """>Første</a> " end if
if forrigeID = "" then Response.Write "Forrige " else Response.Write "<a href=""?kat="&kat&"&id=" & forrigeID & """>Forrige</a> " end if
if nesteID = "" then Response.Write "Næste " else Response.Write "<a href=""?kat="&kat&"&id=" & nesteID & """>Næste</a> " end if
if Int(maxID) = Int(id) then Response.Write "Sidste " else Response.Write "<a href=""?kat="&kat&"&id=" & maxID & """>Sidste</a> " end if
Puhh det funger ikke helt - hvor kommer det UsersID fra ?
Men ellers har jeg prøvet at skrive det lidt om
Til dette - men fungerer ikke helt
SQL = "Select * FROM [billeder] WHERE ID=" & request("nr") set rstemp = conntemp.execute(sql) response.write "<img src=billeder/store/" & rstemp("filnavn") & " border=0><p>" response.write "Send billede"
set rs = server.CreateObject("ADODB.Recordset") set conn = server.CreateObject("ADODB.Connection") 'Her åbes databasen og den hedder db9.mdb det retter du bare til at passe med din conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
kat = Request.QueryString("kat")
'find max og min ID SQL = "SELECT max(ID) as maxid, min(ID) as minid FROM billeder WHERE kategori=" & kat
'hendt ID fra querystingen. og hvis ID er tom sæt ID = minID i db'en id = Request.QueryString("id") if id = "" then id = minID
'Find næste og forrige ID SQL = "SELECT TOP 1 ID FROM billeder WHERE ID > " & id & " AND kategori="&kat set rs = Conn.Execute(SQL) if rs.EOF then nesteID = "" else nesteID = rs("ID") end if
SQL = "SELECT TOP 1 ID FROM billeder WHERE ID < " & id & " AND kategori="&kat & " ORDER BY ID DESC" set rs = Conn.Execute(SQL) if rs.EOF then forrigeID = "" else forrigeID = rs("ID") end if
'Så han man dette ' valgt ID = ID ' Næste ID = nesteID ' Forrige ID = forrigeID ' Føste ID = minID ' Sidste ID = maxID
'UDSKRIV HER
'Her laves Link if Int(minID) = Int(id) then Response.Write "Første " else Response.Write "<a href=""?mode=vis&kat="&kat&"&nr=" & minID & """>Første</a> " end if
if forrigeID = "" then Response.Write "Forrige " else Response.Write "<a href=""?mode=vis&kat="&kat&"&nr=" & forrigeID & """>Forrige</a> " end if
if nesteID = "" then Response.Write "Næste " else Response.Write "<a href=""?mode=vis&kat="&kat&"&nr=" & nesteID & """>Næste</a> " end if
if Int(maxID) = Int(id) then Response.Write "Sidste " else Response.Write "<a href=""?mode=vis&kat="&kat&"&nr=" & maxID & """>Sidste</a> " end if
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.