Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Sfogliando pagina, perdo impostazioni recordset

    Ho il seguente problema:

    Faccio una ricerca a campi multipli passando i dati da elencaclient.asp a elencaclienti.asp.

    Fin qui tutto bene (grazie all'aiuto dei ragazzi del forum), mi visualizza 20 risultati per pagina come intendevo fare io.

    Il problema sorge quando vado a cambiare pagina, in quanto i parametri non vengono passati e sinceramente non ho idea di come farli passare.

    Il codice che utilizzo è il seguente:

    codice:
    If Pagina > 1 Then 
            Response.Write "<< Prima pagina< Indietro"
    		Else
            Response.Write "<< Prima pagina< Indietro"
         End If
    If CInt(Pagina) <> CInt(PagineTotali) Then%> <% Response.Write "Avanti >Ultima pagina >>" 
                            Else
            Response.Write "Avanti >Ultima pagina >>"
    	End If
    In questo modo, se nella mia ricerca voglio tutti i rivenditori della prov. di udine (2 campi), nella prima pagina mi da effettivamente i risultati richiesti, mentre quando vado avanti con le pagine, mi va, effettivamente alla seconda pagina dell'insieme di tutti i nominativi presenti nel database, ignorando i parametri di ricerca.

    Che soluzione posso adottare?

  2. #2
    devi portarti i parametri che ti servono in querystring mettendoli nell'href dei pulsanti della pagina

  3. #3
    Utente di HTML.it L'avatar di viki1967
    Registrato dal
    Feb 2003
    Messaggi
    1,757

    Re: Sfogliando pagina, perdo impostazioni recordset

    Originariamente inviato da wildcloud
    Che soluzione posso adottare?
    Cambia script cerca sul forum per "paginazione roby72".
    A S P : tutto il resto è noia...
    L I N U X : forse mi "converto"...

  4. #4
    Niente da fare, ho dato un occhiata al Robyscript, ma non ne sono venuto a capo...

    Volevo evitare di passare tutto in query string, anche perchè ho fatto una mezza prova e non sembra andare (avrò sbagliato la sintassi, ma in ogni caso cercherei prima dei metodi alternativi).

    Posto l'intero codice:

    codice:
    <%@ LANGUAGE = VBScript.Encode %>
    
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <meta name="description" content="">
    <meta name="keywords" content="">
    <title>:: *** Area Riservata *** ::</title>
    
    </head>
    <link rel="stylesheet" href="modulo.css" type="text/css">
    
    
    <%
    
    ragsoc= Trim(Request.Form("ragsoc"))
    provincia= Trim(Request.Form("provincia"))
    piva= Trim(Request.Form("piva"))
    codfisc= Trim(Request.Form("codfisc"))
    citta= Trim(Request.Form("citta"))
    catmerc= Trim(Request.Form("catmerc"))
    tipocom= Trim(Request.Form("tipocom"))
    
    
    
    coloresfondo="#FFFFFF"
    coloresfondoa="#6698BC"
    coloretesto="#002E59"
    coloresfondov="#8FBE00"
    %>
    <body text="<%=coloretesto%>" leftmargin="0" topmargin="0" background="images\o.jpg"  >
    
    
    
    
    <table width="772px" class="cella" align="center" bgcolor="#FFFFFF">
    <tr>
    <td>
    
    
    <table width="772px" border="0" cellpadding="0" cellspacing="0" align="center">
      <tr> 
        <td width="100%" valign="top"> 
    
    
    
    
    <table width="98%" cellpadding="0" cellspacing="4" align="center" bgcolor="<%=coloresfondo%>">
    <tr>
        <td  bgcolor="<%=coloresfondo%>" align="center">
         [img]images\coseme.jpg[/img]
    
    
    
    
    <div align="left">
    <table width="200px" cellpadding="0" cellspacing="0" >
    <tr>
        <td width="200px" bgcolor="<%=coloresfondo%>" align="left" background="images\sfondocella.jpg" class="testobianco10">
    [img]images\homepage.jpg[/img]    
        </td>
    </tr>
    </table>
    </div>
        </td>
    </tr>
    
    <tr>
        <td width="100%" colspan="2" align="left" class="cellav">
         <div class="titolo2">Clienti presenti nell'archivio di <%=session("nomeutente")%></div>
        </td>
    </tr>
    <tr>
        <td width="100%" colspan="2" align="left" class="cella">
         
    
    <%
    
    
    strSQL = "SELECT idcliente,ragsoc,citta,provincia,telefono1 FROM CLIFOR WHERE (ragsoc <> '""') "
    	if ragsoc<>"" then strSQL=strSQL & "AND (ragsoc LIKE '%"&ragsoc&"%')"
    	if citta<>"" then strSQL=strSQL & " AND (citta LIKE '%"&citta&"%')"
    	if provincia<>"" then strSQL=strSQL & " AND (provincia LIKE '%"&provincia&"%')"
    	if piva<>"" then strSQL=strSQL & " AND (piva = '"&piva&"')"
    	if codfisc<>"" then strSQL=strSQL & " AND (codfisc = '"&codfisc&"')"
    	if catmerc<>"" then strSQL=strSQL & " AND (catmerc1='"&catmerc&"' OR catmerc2='"&catmerc&"' OR catmerc3='"&catmerc&"' OR catmerc4='"&catmerc&"' OR catmerc5='"&catmerc&"' OR catmerc6='"&catmerc&"' OR catmerc7='"&catmerc&"')"
    	if tipocom<>"" then strSQL=strSQL & " AND (tipocom1='"&tipocom&"' OR tipocom2='"&tipocom&"' OR tipocom3='"&tipocom&"')"
    set rs=server.createobject("adodb.recordset")
    
    
    If TRIM(Request.QueryString("Pagina")) = "" Then
            Pagina = 1
        Else
            Pagina = CInt(Request.QueryString("Pagina"))
        End If
    
    recordperpagina = 20
    
    	rs.PageSize = recordperpagina
    	rs.CacheSize = recordperpagina
    
    
     rs.Open strSQL,conn,1
    if rs.eof=true and rs.bof=true then
    %>
    <div class="titolo">Elenco clienti</div>
    <div class="testo10" align="center">
    
    
    
    Nessun cliente ancora presente in archivio
    </div></div>
    	
    
    
    
    
    
    
    <%
    else
    paginetotali = rs.PageCount
    rs.AbsolutePage = Pagina
    %>
    <div class="titolo">Clienti in archivio: <%=rs.RecordCount%>
    
    Pagina <%=Pagina%> di <%=paginetotali%></div>
    <%
    riga=true
    Response.write("
    <div class='testoa10' align='center'>")
    If Pagina > 1 Then 
            Response.Write "<< Prima pagina< Indietro"
    		Else
            Response.Write "<< Prima pagina< Indietro"
         End If
    If CInt(Pagina) <> CInt(PagineTotali) Then%> <% Response.Write "Avanti >Ultima pagina >>" 
                            Else
            Response.Write "Avanti >Ultima pagina >>"
    	End If
    
    Response.write("</div>
    ")
    
    
    %>
    <table width="96%" cellpadding="1" cellspacing="1" align="center">
    <tr>
    <td>
    <td class="testo10" >N.</td>
    <td class="testo10" >Nome/Ragione Sociale</td>
    <td class="testo10" >Comune</td>
    <td class="testo10" >Provincia</td>
    <td class="testo10" >Telefono</td>
    </tr>
    <tr>
    <%
    
    For i = 1 To rs.PageSize
    			rcount = i
    			If Pagina > 1 Then
    				For x = 1 To (Pagina - 1)
    					
                                            rcount = + rcount
    				Next
    			End If
    
    
    if riga=true then
    colorex="#B0CFE5"
    else
    colorex=coloresfondo
    end if
    If Not rs.EOF Then
    %>
    <td height="11" align="center" bgcolor="<%=colorex%>">">[img]edit.gif[/img]' border="0">
    ">[img]delete.gif[/img]' border="0">
    ">[img]delete.gif[/img]' border="0">
    
    </td>
    <td class="testo10" bgcolor="<%=colorex%>"><%=rcount+(pagina-1)*recordperpagina%></td>
    <td class="testo10" bgcolor="<%=colorex%>"><%=rs("ragsoc")%></td>
    <td class="testo10" bgcolor="<%=colorex%>"><%=rs("citta")%></td>
    <td class="testo10" bgcolor="<%=colorex%>"><%=rs("provincia")%></td>
    <td class="testo10" bgcolor="<%=colorex%>"><%=rs("telefono1")%></td>
    <tr>
    <%
    riga=not(riga)
    rs.movenext
    End If
    	Next
    
    
    %>
    </table>
    
    
    
    
    <%
    end if
    rs.close
    set rs=nothing
    conn.close
    set conn=nothing
    
    
     %>
    </td>
    </tr>
    </table>
    
    </td>
    </tr>
    
    </table>
    
    
    
    
    
    
    
    
    
    
    </td>
    </tr>
    </table>
    
    <%end if%>
    </body>
    </html>
    Spero davvero che possiate aiutarmi... so disperato

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi passare i valori con cui ottieni il recordset in querystring oppure all'interno di un form ma mi sembra esagerato...
    Se usi le querystring questi:

    ragsoc= Trim(Request.Form("ragsoc"))
    provincia= Trim(Request.Form("provincia"))
    piva= Trim(Request.Form("piva"))
    codfisc= Trim(Request.Form("codfisc"))
    citta= Trim(Request.Form("citta"))
    catmerc= Trim(Request.Form("catmerc"))
    tipocom= Trim(Request.Form("tipocom"))

    trasformali semplicemente in Request in modo da recuperare sia i valori provenienti dal form originale di ricerca sia quelli provenienti dalla paginazione in querystring.

    Roby

  6. #6
    Grazie Roby, così va perfettamente

    Certo avrei preferito non usare la querystring, ma effettivamente, l'idea di fare con i form mi scombussola

    Grazie ancora

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.