Newsgroup: it.comp.www.asp
Titolo: Session? No, Grazie.

ricollegare al db!!!!!!!!!.
In questo modo dovresti pero' leggere l'intero recordset in memoria,
il che e' fattibile se il tuo recordset contiene qualche centinaio
di record. Immaginiamo che il recordset contenga qualche MILIONE di
record (!), rischi di andare in timeout dello script o di saturare
la memoria del server (il tuo provider impazziara'... ma non di
gioia).
Io procederei nel modo seguente:
1. conto quanti record ci sono nel recordset (usando SELECT COUNT(*))
2. se il numero di record e' inferiore a 200 (ipotesti), carico
   il recordset in un array, se no procedo alla classica "paginazione"
   riaprendo ogni volta il recordset.
Per il resto, se vuoi caricare il recordset in memoria non devi
fare altro che fare un ciclo che legge tutto il recordset ed infila
i dati dentro all'array ridimensionando l'array eventualmente, ma
se sai gia' quanto e' grosso il recordset (perche' hai contato prima
i record) non hai problemi in questo senso.
Tipo:
Dim recordsetArray
ReDim recordsetArray(numeroDiRecord)
actual=1
-------------ma qui non bisogna incrementare actual????
(actual=actual+1)-------
Do While Not rs.EOF
  For Each f in rs.Fields
    recordsetArray(actual) = recordsetArray(actual) & f.value() & "#"
  Next
  rs.MoveNext
Loop
In questo modo ogni elemento dell'array contiene il record con i
campi separati da '#'. Per reperire i singoli campi usi una funzione
di 'parsing'.
-------perfetto, così avrò un unico array contenente tutti i campi da
scompattare, con un comando tipo
mid(x,y,z)--------------------------------------------
---------------ma come cacchio si trasporta un array in Session???(non me lo
prende,non me lo prende, non me lo prende,non me lo prende,non me lo prende,
non me lo
prende)----------------------------------------------------------------
------------Se faccio tipo:
------------for i =1to 10
------------Session("id(i)")=RS("id")
------------Session("articolo(i)")=RS("articolo")
------------next
------------Redirect.....ecc..ecc...PAG-X
------------in PAG-X avrò
------------for i =1to10
------------variabile1=Session("id(i)")
------------variabile2=Session("articolo(i)")
------------response.write(variabile1)
------------response.write(variabile2)
------------next
------------mi stampa i risultati solo per i=1
------------allora penso: ma si potranno mettere gli array così nell'
oggetto -------------------Session?
------------Ditemelo, che cacchio!
Ciao e grazie,
mi sono abbottato.
(con tutto il rispetto per tutti, scusate eventuali intercalari  un pò
forti)
8-<>   8-\\  8-//   8-|
Marco

prende)----------------------------------------------------------------
Prova a fare una cosa del tipo
Set Session("il_mio_array") = IlMioArray
E quindi a rileggerlo con
Set IlMioArray = Session("il_mio_array")
Davide

Ve lo dico io come si trasporta un' array con l' oggetto Session,
la sintassi giusta è la seguente:
Session("marco"&(i)&"")= a(i)        per i[x..y]
e per leggerlo in un' altra pag.:
Response.Write Session("marco"&(i)&"")
Volendo, entrambi così come sono si possono mettere in un ciclo For....Next
Semplice, no?
Basta concepire qual è il momento giusto per l' apertura e la chiusura degli
apici e delle parentesi, che  è uguale un pò per tutto......
meglio imparare a risolversi da soli.......
(a volte ne sa più il patito che il saputo!!!  :-)))))
Ciao!