Avatar billede ultra Nybegynder
29. december 2002 - 14:04 Der er 6 kommentarer og
2 løsninger

First, Previous, Next Last?

Hej,

Kan nogne hjælpe mig med at lave en stabil/ordentligt script/funktion at nåe man klikker på linket FØRST så skal den gå til den første ID i db'en og nåe man klikker på NÆSTE til den næste ID i db'en og FORRIGE til den forrige og SIDST til den sidste ID i db'en.

På forhånd tak!
Avatar billede no_doubt Nybegynder
29. december 2002 - 14:14 #1
Avatar billede eagleeye Praktikant
29. december 2002 - 14:14 #2
Ja hvad hedder din tabel i databasen og kolonnen med ID?
Avatar billede ultra Nybegynder
29. december 2002 - 14:19 #3
>>eagleeye

Tabelen hedder: Users
Kolonen ID hedder:UsersID
Avatar billede eagleeye Praktikant
29. december 2002 - 14:30 #4
Eks kunne være sådan her:


<%
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")

'find max og min ID
SQL = "SELECT max(UsersID) as maxid, min(UsersID) as minid FROM Users"
Set rs = Conn.Execute (SQL)
maxID = rs("maxid")
minID = rs("minid")

'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 UsersID FROM Users WHERE UsersID > " & id
set rs = Conn.Execute(SQL)
if rs.EOF then
  nesteID = ""
else
  nesteID = rs("UsersID")
end if

SQL = "SELECT TOP 1 UsersID FROM Users WHERE UsersID < " & id & " ORDER BY UsersID DESC"
set rs = Conn.Execute(SQL)
if rs.EOF then
  forrigeID = ""
else
  forrigeID = rs("UsersID")
end if

'Så han man dette
' valgt UserID = ID
' Næste UserID = nesteID
' Forrige UserID = forrigeID
' Føste UserID = minID
' Sidste UserID = maxID




'Her laves Link
if Int(minID) = Int(id) then
  Response.Write "Første "
else
  Response.Write "<a href=""?id=" & minID & """>Første</a> "
end if

if forrigeID = "" then
  Response.Write "Forrige "
else
  Response.Write "<a href=""?id=" & forrigeID & """>Forrige</a> "
end if

if nesteID = "" then
  Response.Write "Næste "
else
  Response.Write "<a href=""?id=" & nesteID & """>Næste</a> "
end if

if Int(maxID) = Int(id) then
  Response.Write "Sidste "
else
  Response.Write "<a href=""?id=" & maxID & """>Sidste</a> "
end if
%>
Avatar billede medions Nybegynder
29. december 2002 - 14:32 #5
Sådan her?

<%
    If Request.QueryString("show") = "TheFirst" Then
        strSQL = "SELECT TOP 1 FROM [Users]"
        Set objRs = objConn.Execute(strSQL)
    End If
   
    If Request.QueryString("show") = "TheLast" Then
        strSQL = "SELECT TOP 1 FROM [Users] ORDER BY UserID DESC"
        Set objRs = objConn.Execute(strSQL)
    End If
   
    If Request.QueryString("show") = "TheNext" Then
       
    End If
   
    intUserID = objRs("UserID")
%>

<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=TheFirst&no=1">Vis den første</a>
<p>
<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=TheLast">Vis den sidste</a>
<p>
<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=TheNext&no=<%= intUserID +1 %>">Vis den næste</a>
<p>
<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=Theprevious&no=<%= intUserID -1 %>">Vis den forige</a>

<%= intUserID %>

//>Rune
Avatar billede medions Nybegynder
29. december 2002 - 14:34 #6
Hov, jeg glemte vidst det sidste ;o)

<%
    If Request.QueryString("show") = "TheFirst" Then
        strSQL = "SELECT TOP 1 FROM [Users]"
        Set objRs = objConn.Execute(strSQL)
    End If
   
    If Request.QueryString("show") = "TheLast" Then
        strSQL = "SELECT TOP 1 FROM [Users] ORDER BY UserID DESC"
        Set objRs = objConn.Execute(strSQL)
    End If
   
    If Request.QueryString("show") = "TheNext" Or Request.QueryString("show") = "ThePrevious" Then
        strSQL = "SELECT * FROM [Users] WHERE UserID =" & Request.QueryString("no")
    End If
   
    intUserID = objRs("UserID")
%>

<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=TheFirst&no=1">Vis den første</a>
<p>
<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=TheLast">Vis den sidste</a>
<p>
<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=TheNext&no=<%= intUserID +1 %>">Vis den næste</a>
<p>
<a href="<%= Request.ServerVariables("SCRIPT_NAME") %>?show=ThePrevious&no=<%= intUserID -1 %>">Vis den forige</a>

<%= intUserID %>

//>Rune
Avatar billede hossein Nybegynder
29. december 2002 - 14:35 #7
Avatar billede medions Nybegynder
29. december 2002 - 16:05 #8
Thx 4 Poinz

//>Rune
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