Avatar billede asp_rookie Nybegynder
01. juli 2002 - 10:19 Der er 16 kommentarer og
1 løsning

Paging el. lign....

Er der nogen der ved hvordan man laver et 'list næste xx antal nyheder system'- script el. lign....
Lidt ligesom her på eksperten....
Så man kan lave en overskuelig oversigt over de antal nyheder man har i  sin nyheds db.
Avatar billede tmceu Praktikant
01. juli 2002 - 10:22 #1
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 10:23 #2
Tænkte nok lige netop den ville komme...:o)
Avatar billede tmceu Praktikant
01. juli 2002 - 10:36 #3
De fleste tutorials/artikler vedr. paging ligner hinanden. Hvis du forventede andet end et "standard svar", kunne du passende stille spørgsmålet mere specifikt.

Har du prøvet ovenstående og i så fald, har du problemer med det ?
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 10:38 #4
Prøver det lige....
Avatar billede eagleeye Praktikant
01. juli 2002 - 10:50 #5
Jeg kan prøve at uddybe dette eks (http://activedeveloper.dk/aspdigital/kapitel2/paging.asp) lidt:

Du har sikkert din egen SQL-sætning som du bruger til at søge med så den udskrifter du bare den fra eksemplet:
strSQL = "SELECT LinkURL FROM Links"
med dig egen:
strSQL = DIN SSQL SÆTNING


Så angiver du hvor mange du vil havde på hver side i linier, 10->XX:
    rs.PageSize = 10


Ud skrivning af søge resultet skal gøres inde i det loop der er:
    Do While Not rs.EOF And intRecCount > 0
        Response.Write rs("LinkURL") & "<br>"
    intRecCount = intRecCount - 1
    rs.MoveNext
    Loop

Du har sikkert et tilsvarne loop som du udskriver søgeresultatet i idag så du udskirve denne linie:
        Response.Write rs("LinkURL") & "<br>"
Men alle de linier du måtte hvade behov for...



Dette kode laver en liste i bunde med Gå til side 1 2 3 4 osv:
Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
    Response.Write "<a href=paging.asp?page=" & intNum & ">" & intNum & "</a> "
Next


Dette kode lave en links til forrige side via truk på <<:
Response.Write "<p>"
If Clng(intPage) > 1 Then
    Response.Write "<a href=paging.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
    Response.Write "&lt;&lt;"
End If


Dette kode lave en links til næste side via tryk på >>:
If Clng(intPage) < Clng(intPageCount) Then
    Response.Write "<a href=paging.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
    Response.Write "&gt;&gt;"
End If


Jeg håber det giver lidt ekstra hjælp ellers så bare spørg igen.
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 10:51 #6
Havde jeg set tidligere - og lige den jeg ledte efter...:o)
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 11:34 #7
Får denne fejl....

ADODB.Recordset error '800a0bb9'

The application is using arguments that are of the wrong type, are out of acceptable range, or are in conflict with one another.


/test_agm/news/nyheder_ny.asp, line 11:

Set rs = Server.CreateObject("ADODB.RecordSet")
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 11:39 #8
bare mig der havde lavet en fejl...
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 12:04 #9
Kan ikke få det til at virke hvis jeg f.eks. kun vil have vist 5 nyheder pr side...samt det kun skal være xx karakterer der er vist af den enkelte nyhed...og efter nyheden skal være et link til hele nyheden...

Har prøvet med...

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "Select * From nyheder Order By Dato Desc"
strDSN = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("nyheder.mdb")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 3
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not rs.EOF And intRecCount > 0
      response.write rs("Nyhed")
      if len(trim(rs("Nyhed")))= 15 then response.write "..."
      response.write "<br><a href=""news_main.asp?id=" & rs("NyhedID") & """>Læs mere >></a><br>"
      intRecCount = intRecCount - 1
    rs.MoveNext
   
    Loop
  End If
End if
rs.Close
Set rs = Nothing
Avatar billede tmceu Praktikant
01. juli 2002 - 12:07 #10
Hvis du vil vise 5 pr. side, sætter du pagesize til 5. Mht. x karakterer kan du anvende LEFT kommandoen, enten i dit SQL statement eller i ASP.
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 12:34 #11
øhh... ja
Sådan skulle det se ud...:

...esponse.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not rs.EOF And intRecCount > 0
      response.write rs("Nyhed")
      if len(trim(rs("Nyhed")))= 15 then response.write "..."
      response.write "<a href=""../news_main.asp?id=" & rs("NyhedID") & """> >></a><br>"
      intRecCount = intRecCount - 1
    rs.MoveNext   
    Loop
End If.....
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 12:35 #12
Men tak for hjælpen....
Avatar billede tmceu Praktikant
01. juli 2002 - 12:49 #13
Det var så lidt :-)
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 22:49 #14
Ups.... min len virker ikke hele nyheden bliver skrevet..???
Avatar billede eagleeye Praktikant
01. juli 2002 - 23:01 #15
Hvis det er nyhed som du kun vil havde 15 karakter så ret linien hvor nyheden bliver udskrevt til:

Do While Not rs.EOF And intRecCount > 0
      response.write Left(rs("Nyhed"),15)
Avatar billede asp_rookie Nybegynder
01. juli 2002 - 23:30 #16
Nåhh ja den havde jeg lige glemt....
Avatar billede asp_rookie Nybegynder
02. juli 2002 - 09:09 #17
Heii... eagleeye
Det kan være du kan klare denne...
http://www.eksperten.dk/spm/231286

Har problemer med at få vist side 2 -3 - 4 osv...
Når jeg bruger min paging side som include fil!!!
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