Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407

    Problema con paginazione records

    Ciao al forum.

    Sto cercando di paginare gli interventi registrati in un guestbook ed ho questo codice che nella riga rossa restituisce quest'errore, sapete illuminarmi ?

    ADODB.Recordset error '800a0bcd'
    Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.
    /index.asp, line 199
    Codice di paginazione:

    codice:
    <% ACTION = Request.Querystring("ACTION") %>
    <% PAGE = CInt(Request.Querystring("PAGE")) %>
    
    <% RCOUNT = CInt(Request.Querystring("RCOUNT")) %>
    <% If RCOUNT = "" Then %>
    <% RCOUNT = "0" %>
    <% End If %>
    
    <%
    
    Set objRS = server.CreateObject("ADODB.Recordset")
    MySQL = "SELECT * from TBL_BOOK ORDER BY DATE_ENTERED DESC"
    objRS.Open MySQL, objConn
    %>
    
    <% RECXPAG = 1 %>
    
    <%  
        objRS.PageSize = RECXPAG
    %>
    
    
    <% If ACTION = "FORWARD" Then %>
     <% PAGE = PAGE + 1 %>
     <% RCOUNT = RCOUNT + RECXPAG %>
      <% For DACOUNT = 1 To RCOUNT %>
    
      <% objRS.MoveNext %>     
    
      <% Next %>
    <% End If %>
    
    
    <% If ACTION = "BACK" Then %>
     <% PAGE = PAGE - 1 %>
     <% RCOUNT = RCOUNT - RECXPAG %>
     <% If RCOUNT <> 0 Then %>
      <% For DACOUNT = 1 To RCOUNT %>
          <% objRS.MoveNext %>
      <% Next %>
     <% End If %>
    <% End If %>
    
    
    <% If RCOUNT = "0" Then %>
    <% PAGE = 1 %>
    <p align="center"><font face="Arial">
    
    <%
    'Totale dei record
    strSQL = "SELECT COUNT(*) FROM tbl_BOOK"
    Set objRec = objConn.Execute(strSQL)
    tot_record = objRec(0)
    set objRec = nothing
    %>
    
      <% If Cint(tot_record) > 1 or Cint(tot_record) = 0 Then %>
       <% =Cint(tot_record) %>
    </font><font face="Arial" size="1">
    
    Interventi registrati
    </font><font face="Verdana" size="1" color="#000080">
    
    
      <% Else %>
       <% =Cint(tot_record) %> 
    </font><font face="Arial" size="1">
    
    Interventi registrati</font><font face="Verdana" size="1" color="#000080">
    
      <% End If %>
    
    
    </font><font face="Verdana" size="1" color="#FFFFFF">
    
    <% If Cint(tot_record) <> 0 And RECXPAG < Cint(tot_record) Then %>
    Indietro <% = RECXPAG %>
    <% End If %></font></p>   
    <% End If %>
    
    <div align="center"><center>
    
    <table border="0" width="400">
      <tr>
        <td width="200"><% If RCOUNT > 0 Then %>
      <form method="PUT" action="default.asp">
      <input type="hidden" name="ACTION" value="BACK">
      <input type="hidden" name="RCOUNT" value="<% =RCOUNT %>">
      <input type="hidden" name="PAGE" value="<% =PAGE %>">
    
      <p align="center"><font face="Arial">
      <input type="submit" value="Avanti"></font></p>
     </form>
    <% End If %>
        </td>
    
        <td width="200"><% If PAGE = objRS.PageCount Then %>
    	<% Else %>
      <form method="PUT" action="default.asp">
       <input type="hidden" name="ACTION" value="FORWARD">
      <input type="hidden" name="RCOUNT" value="<% =RCOUNT %>">
      <input type="hidden" name="PAGE" value="<% =PAGE %>">
    
      <p align="center"><font face="Arial"><input type="submit" value="Avanti"></font></p>
     </form>
     <% End If %>
       </td>
      </tr>
    </table>
    
    
    </center></div>

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi testare che il recordset non sia vuoto e/o finito.

    codice:
    if Not objRS.EOF then....
    Roby

  3. #3
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    ti ringrazio Roby72, ma restituisce sempre lo stesso errore:

    codice:
    <% ACTION = Request.Querystring("ACTION") %>
    <% PAGE = CInt(Request.Querystring("PAGE")) %>
    
    <% RCOUNT = CInt(Request.Querystring("RCOUNT")) %>
    <% If RCOUNT = "" Then %>
    <% RCOUNT = "0" %>
    <% End If %>
    
    <%
    
    Set objRS = server.CreateObject("ADODB.Recordset")
    MySQL = "SELECT * from TBL_BOOK ORDER BY DATE_ENTERED DESC"
    objRS.Open MySQL, objConn
    
    if Not objRS.EOF then   
    %>
    
    <% RECXPAG = 1 %>
    
    <%  
        objRS.PageSize = RECXPAG
    %>
    
    
    <% If ACTION = "FORWARD" Then %>
     <% PAGE = PAGE + 1 %>
     <% RCOUNT = RCOUNT + RECXPAG %>
      <% For DACOUNT = 1 To RCOUNT %>
    
      <% objRS.MoveNext %>     
    
      <% Next %>
    <% End If %>
    
    
    <% If ACTION = "BACK" Then %>
     <% PAGE = PAGE - 1 %>
     <% RCOUNT = RCOUNT - RECXPAG %>
     <% If RCOUNT <> 0 Then %>
      <% For DACOUNT = 1 To RCOUNT %>
          <% objRS.MoveNext %>
      <% Next %>
     <% End If %>
    <% End If %>
    
    
    <% If RCOUNT = "0" Then %>
    <% PAGE = 1 %>
    <p align="center"><font face="Arial">
    
    <%
    'Totale dei record
    strSQL = "SELECT COUNT(*) FROM tbl_BOOK"
    Set objRec = objConn.Execute(strSQL)
    tot_record = objRec(0)
    set objRec = nothing
    %>
    
      <% If Cint(tot_record) > 1 or Cint(tot_record) = 0 Then %>
       <% =Cint(tot_record) %>
    </font><font face="Arial" size="1">
    
    Interventi registrati
    </font><font face="Verdana" size="1" color="#000080">
    
    
      <% Else %>
       <% =Cint(tot_record) %> 
    </font><font face="Arial" size="1">
    
    Interventi registrati</font><font face="Verdana" size="1" color="#000080">
    
      <% End If %>
    
    
    </font><font face="Verdana" size="1" color="#FFFFFF">
    
    <% If Cint(tot_record) <> 0 And RECXPAG < Cint(tot_record) Then %>
    Indietro <% = RECXPAG %>
    <% End If %></font></p>   
    <% End If %>
    
    <div align="center"><center>
    
    <table border="0" width="400">
      <tr>
        <td width="200"><% If RCOUNT > 0 Then %>
      <form method="PUT" action="default.asp">
      <input type="hidden" name="ACTION" value="BACK">
      <input type="hidden" name="RCOUNT" value="<% =RCOUNT %>">
      <input type="hidden" name="PAGE" value="<% =PAGE %>">
    
      <p align="center"><font face="Arial">
      <input type="submit" value="Avanti"></font></p>
     </form>
    <% End If %>
        </td>
    
        <td width="200"><% If PAGE = objRS.PageCount Then %>
    	<% Else %>
      <form method="PUT" action="default.asp">
       <input type="hidden" name="ACTION" value="FORWARD">
      <input type="hidden" name="RCOUNT" value="<% =RCOUNT %>">
      <input type="hidden" name="PAGE" value="<% =PAGE %>">
    
      <p align="center"><font face="Arial"><input type="submit" value="Avanti"></font></p>
     </form>
     <% End If
    End If   %>
       </td>
      </tr>
    </table>
    
    
    </center></div>

  4. #4
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Nessuno sa aiutarmi ?

  5. #5
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    il db è MySQL?

    L'immaginazione è l'intelligenza che si diverte

  6. #6
    Utente di HTML.it L'avatar di ubbicom
    Registrato dal
    Mar 2004
    Messaggi
    1,407
    Si il DB è MySQL.

  7. #7
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    ecco intanto potresti dare un'occhiata qui:

    Paginazione MySQL


    elisa
    L'immaginazione è l'intelligenza che si diverte

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.