paginazione record di una query

franciros

Nuovo Utente
29 Ott 2006
28
0
1
Ciao a tutti, il codice che segue mi dovrebbe paginare i record che vengono fuori da una query con le variabili che arrivano da un'altra pagina asp. Sta di fatto che la pagina iniziale è ok, ma se clicco per passare alla seconda mi da errore, come se perdesse le variabili:
Codice:
<%

    ' DEFINISCO LE VARIABILI CHE MI SERVONO PER L'APPLICAZIONE
    Dim sc, cn, rs, quanti, pag, contatore, uni, cstudio, clas, a_s, regio, prov, cfusom, sc_cfu, cfudett, ageo, tip_lau, notes

	cfudett=request.form("scelte_cfu") + request.form("cfudett")
	
	session("cfudett")=request.form("scelte_cfu") + request.form("cfudett")
	'response.Write(cfudett)
	
    ' DEFINISCO LA STRINGA DI CONNESSIONE
    sc = ""
    sc = sc & "driver={Microsoft Access Driver (*.mdb)};dbq="
    sc = sc & Server.MapPath("/stage/stage.mdb")

    ' IMPOSTO LA CONNESSIONE EDIL RECORDSET
    Set cn = Server.CreateObject("ADODB.Connection")
    Set rs = Server.CreateObject("ADODB.Recordset")

    ' APRO LA CONNESSIONE COL DATABASE
    cn.Open sc

    ' DEFINISCO IL NUMERO DI RECORD DA VISUALIZZARE PER OGNI PAGINA
    quanti = 20

    ' RECUPERO IL NUMERO DI PAGINA CORRENTE
    ' E CONTROLLO CHE NON SIA INFERIORE A 1
    pag = Request.QueryString("pag")
    If IsNumeric(pag) = False Or pag < 1 Then pag = 1

    ' IMPOSTO UN CONTATORE
    contatore = 0
%>

<style>a { color: blue; }</style>

<table width="95%" border="0" align="center" cellpadding="1">
<tr class="messaggio">
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
</tr>
<tr class="messaggio">
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
  <td>&nbsp;</td>
</tr>
</table>

<table width="95%" border="0" align="center" cellpadding="1" class="testi">
<%
    ' APRO IL RECORDSET
	'sql="SELECT univ,cors,cla,asnt,reg,prov,cfu,cfu_de,note,area,tipo FROM magt WHERE cfu_de " + session("cfudett") + " ORDER BY cfu_de ASC"
	'response.Write(sql)
	'rs.CursorLocation=3
    rs.Open sql, cn, 1
    ' EFFETTUO MATERIALMENTE LA PAGINAZIONE
    rs.PageSize = quanti
    rs.AbsolutePage = pag
    ' ESEGUO IL CICLO
    While rs.EOF = False And contatore < quanti
%>
    
    <tr align="left" valign="baseline" bgcolor="#FFFFCC" class="testi">
      <td width="5%"><%=rs("univ")%></td>
      <td width="8%"><%=rs("cors")%></td>
      <td width="8%"><%=rs("cla")%></td>
      <td width="5%"><%=rs("asnt")%></td>
      <td width="8%"><%=rs("reg")%></td>
      <td width="8%"><%=rs("prov")%></td>
      <td width="24%"><%=rs("cfu")%></td>
      <td width="8%"><%=rs("cfu_de")%></td>
      <td width="5%"><%=rs("note")%></td>
      <td width="8%"><%=rs("area")%></td>
      <td width="8%"><%=rs("tipo")%></td>
  </tr>
<%
        rs.MoveNext
        ' INCREMENTO IL VALORE DEL CONTATORE
        contatore = contatore + 1
    Wend
%>
</table>
<p align="center">
<%If pag > 1 Then%>
    <a href="result.asp?pag=<%=pag-1%>">Indietro</a>
<%End If%>
<%
    Dim x
    x = 1
    For x = 1 To rs.PageCount
        If CInt(pag) <> x Then
%>
            [<a href="result.asp?pag=<%=x%>"><%=x%></a>]
<%
        Else
%>
            [<a href="result.asp?pag=<%=x%>"><b><%=x%></b></a>]
<%
        End If
    Next
%>
<%If rs.EOF = False Then%>
    <a href="result.asp?pag=<%=pag+1%>">Avanti</a>
<%End If%>
</p>
</body>
</html>
<%
    ' UN PO DI PULIZIA...
    rs.Close
    Set rs = Nothing
    cn.Close
    Set cn = Nothing
%>

grazie mille

F
 

Paolo69

Moderatore
Membro dello Staff
MOD
18 Feb 2010
550
13
18
Italy
www.riciclarte.info
In pratica non passi nell'url le variabili...
Codice:
    <%

        ' DEFINISCO LE VARIABILI CHE MI SERVONO PER L'APPLICAZIONE
        Dim sc, cn, rs, quanti, pag, contatore, uni, cstudio, clas, a_s, regio, prov, cfusom, sc_cfu, cfudett, ageo, tip_lau, notes


If request.form("scelte_cfu") <> "" AND request.form("cfudett") <> "" Then

    	cfudett=request.form("scelte_cfu") + request.form("cfudett")
    	
    	session("cfudett")=request.form("scelte_cfu") + request.form("cfudett")
    	'response.Write(cfudett)

Else

		cfudett = request("scelte_abc")
		session("cfudett")  = request("scelte_abc")
		
End If
    	
        ' DEFINISCO LA STRINGA DI CONNESSIONE
        sc = ""
        sc = sc & "driver={Microsoft Access Driver (*.mdb)};dbq="
        sc = sc & Server.MapPath("/stage/stage.mdb")

        ' IMPOSTO LA CONNESSIONE EDIL RECORDSET
        Set cn = Server.CreateObject("ADODB.Connection")
        Set rs = Server.CreateObject("ADODB.Recordset")

        ' APRO LA CONNESSIONE COL DATABASE
        cn.Open sc

        ' DEFINISCO IL NUMERO DI RECORD DA VISUALIZZARE PER OGNI PAGINA
        quanti = 20

        ' RECUPERO IL NUMERO DI PAGINA CORRENTE
        ' E CONTROLLO CHE NON SIA INFERIORE A 1
        pag = Request.QueryString("pag")
        If IsNumeric(pag) = False Or pag < 1 Then pag = 1

        ' IMPOSTO UN CONTATORE
        contatore = 0
    %>

    <style>a { color: blue; }</style>

    <table width="95%" border="0" align="center" cellpadding="1">
    <tr class="messaggio">
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    <tr class="messaggio">
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
      <td>&nbsp;</td>
    </tr>
    </table>

    <table width="95%" border="0" align="center" cellpadding="1" class="testi">
    <%
        ' APRO IL RECORDSET
    	'sql="SELECT univ,cors,cla,asnt,reg,prov,cfu,cfu_de,note,area,tipo FROM magt WHERE cfu_de " + session("cfudett") + " ORDER BY cfu_de ASC"
    	'response.Write(sql)
    	'rs.CursorLocation=3
        rs.Open sql, cn, 1
        ' EFFETTUO MATERIALMENTE LA PAGINAZIONE
        rs.PageSize = quanti
        rs.AbsolutePage = pag
        ' ESEGUO IL CICLO
        While rs.EOF = False And contatore < quanti
    %>
        
        <tr align="left" valign="baseline" bgcolor="#FFFFCC" class="testi">
          <td width="5%"><%=rs("univ")%></td>
          <td width="8%"><%=rs("cors")%></td>
          <td width="8%"><%=rs("cla")%></td>
          <td width="5%"><%=rs("asnt")%></td>
          <td width="8%"><%=rs("reg")%></td>
          <td width="8%"><%=rs("prov")%></td>
          <td width="24%"><%=rs("cfu")%></td>
          <td width="8%"><%=rs("cfu_de")%></td>
          <td width="5%"><%=rs("note")%></td>
          <td width="8%"><%=rs("area")%></td>
          <td width="8%"><%=rs("tipo")%></td>
      </tr>
    <%
            rs.MoveNext
            ' INCREMENTO IL VALORE DEL CONTATORE
            contatore = contatore + 1
        Wend
    %>
    </table>
    <p align="center">
    <%If pag > 1 Then%>
        <a href="result.asp?pag=<%=pag-1%>">Indietro</a>
    <%End If%>
    <%
        Dim x
        x = 1
        For x = 1 To rs.PageCount
            If CInt(pag) <> x Then
    %>
                [<a href="result.asp?pag=<%=x%>&scelte_abc=<%=session("cfudett")%>"><%=x%></a>]
    <%
            Else
    %>
                [<a href="result.asp?pag=<%=x%>&scelte_abc=<%=session("cfudett")%>"><b><%=x%></b></a>]
    <%
            End If
        Next
    %>
    <%If rs.EOF = False Then%>
        <a href="result.asp?pag=<%=pag+1%>&scelte_abc=<%=session("cfudett")%>">Avanti</a>
    <%End If%>
    </p>
    </body>
    </html>
    <%
        ' UN PO DI PULIZIA...
        rs.Close
        Set rs = Nothing
        cn.Close
        Set cn = Nothing
    %>

...prova una cosa del genere
 

franciros

Nuovo Utente
29 Ott 2006
28
0
1
In pratica non passi nell'url le variabili...

un'altra cosa, scusami...ma ovemai si dovessero incrociare più dati per effettuare questa ricerca quindi variabili <> oppure = a null, c'è bisogno di una miriade di incroci di condizioni, dico bene oppure esiste una strada più semplice?

grazie

F
 

Paolo69

Moderatore
Membro dello Staff
MOD
18 Feb 2010
550
13
18
Italy
www.riciclarte.info
un'altra cosa, scusami...ma ovemai si dovessero incrociare più dati per effettuare questa ricerca quindi variabili <> oppure = a null, c'è bisogno di una miriade di incroci di condizioni, dico bene oppure esiste una strada più semplice?

...si, a meno che non salvi le informazioni sui cookie anziché riportarle nell'url ma se per il browser non sono abilitati, il programma non ti funziona.

Paolo
 

franciros

Nuovo Utente
29 Ott 2006
28
0
1
potrebbe essere un'idea....mi stai dicendo che questo mi eviterebbe moltiplicare le query incrociate per campi vuoti o pieni a seconda dei casi?
 
Discussioni simili
Autore Titolo Forum Risposte Data
W Problema eliminazione ultimo record da ultima pagina di crud con paginazione PHP 2
M Classe per paginazione record PHP 8
L Paginazione record su più pagine PHP 9
M query per paginazione record PHP 9
M paginazione record con lettere Classic ASP 0
I Errore 80040220 nella newsletter con paginazione Classic ASP 0
motleyrulez Paginazione Tabella Bootstrap Javascript 2
B [Java] Paginazione in risposta HTTP Java 0
L [PHP] paginazione con classi vendor PHP 2
K [PHP] Paginazione Wordpress: passare variabile PHP 6
A [PHP] If e Else paginazione ok ci sono risultati no ma avanti lo stesso PHP 15
paloppa [PHP] paginazione con ajax PHP 1
O paginazione php mysql PHP 10
A [PHP] limitare counter paginazione PHP 7
V [ASP] paginazione-risultati-query-grandi-dimensioni Classic ASP 8
A [PHP] Problema paginazione motore di ricerca PHP 48
A [PHP] inserire paginazione su script php/mysql PHP 6
Marcello.Fiore Paginazione jQuery - PHP jQuery 2
elpirata [PHP] Paginazione dati estratti da una query con più condizioni PHP 17
X come modificare paginazione del tutorial PHP 0
MarcoGrazia Problema con bootstrap, saltata tutta la paginazione in IE8 HTML e CSS 1
Luca13 ASP Easy-News paginazione Classic ASP 2
G Problema di Indice e Paginazione PHP 5
L articolo: Paginazione dei dati presenti in un file di testo - informazioni PHP 2
M Paginazione di risultati query mysql PHP 2
D Paginazione dati PDO PHP 8
zorro Help paginazione PHP 10
M Problema su numerazione paginazione php PHP 6
D [risolto] Problemi di paginazione dei risultati con una determinata query Classic ASP 4
L paginazione testo senza troncare le parole PHP 3
L testare una paginazione "Creazione di 1000 dati random in una tabella" PHP 7
L problema paginazione con valori -1 -2 -3 -4 PHP 0
N Paginazione con invio modulo PHP 0
L Paginazione file di testo PHP 3
N Script paginazione PHP 0
N Paginazione PHP 2
felino Pagina di ricerca: la paginazione non funziona WordPress 0
xone Evitare Meta Tag duplicati su paginazione php PHP 2
filippino Paginazione file txt con PHP? PHP 1
felino PHP e Paginazione Jquey PHP 2
H [RISOLTO] paginazione PHP + mysql PHP 15
M Problema Paginazione con Mod_rewrite .htaccess PHP 0
J Paginazione PHP in jQuery UI Tabs jQuery 13
ste80 interazione PHP Access con paginazione PHP 7
L Paginazione con pdo. PHP 8
G Paginazione php utilizzando le api di careerjet PHP 0
G Paginazione php utilizzando le api di careerjet WordPress 1
S paginazione PHP 2
L Paginazione file evitare di inserire questi \ o altro nella get PHP 1
K problemi con paginazione tabella PHP 7

Discussioni simili