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

    Paginazione particolare

    Ciao a tutti ho esigenza di fare una paginazione particolare non mi serve mostrare il numero delle pagine ma solo “Prossima Pagina” “Pagina precedente” ho db access

    Allora vi spiego prima il motivo:
    Ho una lista di record nel mio db da mettere 10 per pagina … e ho una var recmostrati (che mi va a contare i record fin quando arriva a 10 si ferma)

    Allora quando stampo ogni record (id, nome ecc..) prendo l’id e mi connetto tramite xml ad un sito esterno dal mio se questo xml mi restituisce qualcosa mostro il record altrimenti no …

    quando il record non viene mostrato tolgo -1 a recmostrati altrimenti non mi vengono stampati 10 record per pagina … alla fine del ciclo ho i miei 10 record stampanti e una variabile “numrecnonstamp” che tiene conto dei record non stampati quindi la var numrecnonstamp es può avere valore 5 … che passo in querystring

    Ora cliccando nel link “prossima pagina” devo mostrare altri 10 record tenendo presente i 10 record per la prima pagina + i record non stampati quindi dovrei dire al db estrai i record dal 15dicesimo in poi e ripetere il tutto per ogni volta che clicco su “prossima pagina” quello che vorrei sapere … è come faccio a dire al db stampa dal 15dicesimo record in poi? Altra cosa il ragionamento che ho fatto è giusto?

    Spero di essermi spiegato bene altrimenti ditemi cosa non è chiaro

  2. #2
    forse ho spiegato male insomma mi serve sapere se posso estrarre da db un blocco di record es: da 20 a 30 .. da 30 a 40 ...

  3. #3
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Con MySQL esiste la clausola LIMIT appositamente...

    Roby

  4. #4

  5. #5
    utilizzando move sarebbe possibile la cosa ...

    es:

    select...
    (in caso di prima pagina inizio dal record 1)

    objRS.move 1
    While objRS.EOF = False And contatore < quanti
    bla bla
    objRS.MoveNext
    ' INCREMENTO IL VALORE DEL CONTATORE
    contatore = contatore + 1
    Wend

    ho bisogno di poter estrerre i record indicnado un una posizione iniziale e una posizione finale ...

  6. #6
    si può fare

    es, per id da 21 a 40


    codice:
    SELECT * FROM 
       (SELECT TOP 20 * FROM
          (SELECT TOP 40 * FROM TABELLA ORDER BY ID ASC)
       ORDER BY ID DESC)
    ORDER BY ID ASC
    se al posto di 40 e 20 metti due variabili il gioco dovrebbe essere ok

  7. #7
    ciao senti e utilizzare objRS.move dici di no? .. ti spiego ho una select un po' complicata non vorrei poi perdermi ... in errori e non venirci più a capo ...

    esempio questa è una delle select...

    Codice PHP:
                if ordine "" then strSQL "SELECT "&_
                
    "* FROM hotel_es as h LEFT JOIN tipo_strutture as t ON "&_
                  
    "h.id = t.hotel_id where (h.city_hotel like '"&replace(nomecitta,"'","''")&"%' or h.city_preferred like '"&replace(nomecitta,"'","''")&"%') and (t.hoteltype_id in (" struttura2 ") or t.hoteltype_id IS NULL) order by h.minrate asc,h.id" 

  8. #8
    per spostarti usa rs.absoluteposition in base a quello che devi fare... poi cicli e ne stampi quelli che vuoi

    o no?!

  9. #9
    Originariamente inviato da slay
    ciao senti e utilizzare objRS.move dici di no? .. ti spiego ho una select un po' complicata non vorrei poi perdermi ... in errori e non venirci più a capo ...

    esempio questa è una delle select...

    Codice PHP:
                if ordine "" then strSQL "SELECT "&_
                
    "* FROM hotel_es as h LEFT JOIN tipo_strutture as t ON "&_
                  
    "h.id = t.hotel_id where (h.city_hotel like '"&replace(nomecitta,"'","''")&"%' or h.city_preferred like '"&replace(nomecitta,"'","''")&"%') and (t.hoteltype_id in (" struttura2 ") or t.hoteltype_id IS NULL) order by h.minrate asc,h.id" 
    la tua query è solo quella più interna. per quelle fuori vanno bene le SELECT *

  10. #10
    ok grazie delle dritte ora ci lavoro un po' su

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.