Avatar billede janbangm Nybegynder
03. februar 2003 - 18:53 Der er 4 kommentarer og
1 løsning

Pagning

Hej

Her en del af en sige jeg er ved at lave. Jeg har kun taget det vigtige kode med. Jeg skalb bruge dettil pagning.

Det virker også fint indtil man tager den sidste post så kommer :

BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

Dette er ikke rigtigt. Har jeg 2 poster kommen den ved at klikke på 2.

Er der nogen der kan hjælpe mig.






intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End if

Objrs.open StrQ ,,1
    objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
     
    Do While Not objrs.EOF And intRecCount > 0
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
<%
response.write intPage
%>
  udaf xx</font>
<%
Response.write intPageCount
%>
<%
            objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
    Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not objrs.EOF And intRecCount > 0
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
    Response.Write "<a href=svarsiden.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
    Response.Write "<a href=svarsiden.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
    Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
    Response.Write "<svarsiden.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
    Response.Write "&gt;&gt;"
End If
%>

&gt;&gt;</font></b></td>
        </tr>
      </table>
    </center>
  </div>
       
  </div>
         

</form>
<p>
         

</body>

</html>
Avatar billede eagleeye Praktikant
03. februar 2003 - 19:58 #1
Du har også koden som laver loopet med to gange i det du har vist.


intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End if

Objrs.open StrQ ,,1
    objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
     
    Do While Not objrs.EOF And intRecCount > 0          '<----- 1. LOOP
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
<%
response.write intPage
%>
  udaf xx</font>
<%
Response.write intPageCount
%>
<%
            objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
    Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not objrs.EOF And intRecCount > 0    '<-------- 2. LOOP
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
Response.Write "<p>Gå til side "


--------
Prøv at lave det om så du kun har et loop som her:

intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End if

Objrs.open StrQ ,,1
    objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
     
    Do While Not objrs.EOF And intRecCount > 0
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
<%
response.write intPage
%>
  udaf xx</font>
<%
Response.write intPageCount
%>
<%
Response.Write "<p>Gå til side "
Avatar billede janbangm Nybegynder
03. februar 2003 - 20:44 #2
Tak for dit svar. Jeg prøvet dette, men nej. Heer skulle kun væære en løkke

Objrs.open StrQ ,,1
    objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
    Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not objrs.EOF And intRecCount > 0
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
    Response.Write "<a href=svarsiden.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
    Response.Write "<a href=svarsiden.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
    Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
    Response.Write "<svarsiden.asp?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
    Response.Write "&gt;&gt;"
End If
%>
Avatar billede eagleeye Praktikant
03. februar 2003 - 20:47 #3
Det er vist nødvendit at sætte en if omkring..:

Objrs.open StrQ ,,1
if not (Objrs.EOF or Objrs.BOF) then
    objrs.PageSize = 1
    objrs.AbsolutePage = intPage
    intRecCount = objrs.PageSize
    intPageCount = objrs.PageCount
    Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
    Do While Not objrs.EOF And intRecCount > 0
   
    intRecCount = intRecCount - 1
    objrs.MoveNext
    Loop
end if
Avatar billede janbangm Nybegynder
03. februar 2003 - 22:04 #4
Det hjælper desværre. Den viser 1 2 og kikker man på 2 går den i fejl
Avatar billede janbangm Nybegynder
17. februar 2003 - 16:24 #5
Lukker
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