|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
|
asp dividere la query su più pagine...
come faccio a dividere una normalissima qquey in più pagine??
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Fa la tua query normalmente tutte le volte che la pagina viene caricata...
Poi nel recordset setti gli attributi: rs.PageSize = 10 'i record visualizzati per pagina rs.AbsolutePage = 1 'la pagina corrente In questo modo rs.PageCount ti indicherà quante pagine puoi creare... I record disponbili nel recordset sono a questo punto quelli relativi alla pagina... Ad esempio se rs.AbsolutePage è 2 sono i record dal 11 al 20... Ovviamnete AbsolutePage sarà il parametro che viene passato alla query string navigando tra pagina e pagina... |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
|
faccio così
Codice:
Set objRecordset = objConnessione.Execute("SELECT * FROM Acquisti")
pag = Request.QueryString("pag")
objrecordset.PageSize = 2
objrecordset.AbsolutePage = pag
do while not objrecordset.Eof
Response.Write( objrecordset.Fields("Nome")&"<br>" )
objrecordset.MoveNext
loopSet objRecordset = objConnessione.Execute("SELECT * FROM Acquisti")
pag = Request.QueryString("pag")
objrecordset.PageSize = 2
objrecordset.AbsolutePage = pag
do while not objrecordset.Eof
Response.Write( objrecordset.Fields("Nome")&"<br>" )
objrecordset.MoveNext
loop
Il set di record corrente non supporta i segnalibri. Potrebbe trattarsi di una limitazione del provider o del tipo di cursore selezionato. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Prova ad aprirlo senza l'EXECUTE ma inq uesta maniera:
rs.Open sSql, cn, 1, 3 Dove sSql è la tua query |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
|
ok così va,ma mi stampa tutti i record...forse dovrei farlo con un for??
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
Codice:
ni=0 while rs.EOF=false and ni<Rs.PageSize ni=ni+1 . . . . . rs.movenext wend |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Stai usando MySQL ? Allora mi sa che non lo supporta...
Con MySQL si fa facilmente: "SELECT * FROM Acquisti LIMIT " & NumPerPagina*(ni-1) & ", " & NumPerPagina & ";" |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
|
Quote:
grazie! |
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
|
ho un problema all'interno del ciclo
vado a fare questa somma totale = totale + objrecordset.Fields("TotaleSpesa") che poi stampo quando esco dal ciclo e ho stampato tutto il recordset,però dividendo le pagine mi fa la somma dei record di ogni pagina...non si può fare in modo che per ogni pagina mi faccia la somma di tutto il recordset?? |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Per ottenere la somma di totale spesa per tutta la tabella puoi semplicemnte fare un'atra query:
SELECT Sum(TotaleSpesa) As Totale FROM Acquisti ; Ti ritornarà un recordset con un solo record e con un solo campo di nome Totale... |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Quote:
|
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
|
che stupido...vado sempre a complicarmi la vita quando esiste l'sql
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:58.



















