77 messaggi dal 24 giugno 2005
ciao a tutti!
questa volta sono alle prese con un problema un po' più complesso (spero che questo sia il forum giusto, diversamente fatemi sapere...).
ho realizzato un sito nel quale è presente una semplice area riservata accessibile tramite username e password, e la username viene salvata in una session Session("MM_Username").
all'interno dell'area riservata, l'utente loggato compila un form in più passaggi e i dati dei campi compilati vengono salvati ognuno in una session, dunque ad un certo punto del form avrò messo da parte un discreto numero di sessions.
il problema è che quando l'utente si disconnette e poi si riconnette, le sessions precedentemente salvate si perdono e bisogna reiniziare da capo la compilazione del modulo.
per questo chiedo, c'è modo di associare tutte le sessions salvate e, al momento del logout (o al momento del session.timeout), associarle alla session MM_Username in modo da recuperare i dati precedentemente inseriti?
è una cosa complicata? quali altri elementi posso fornire (es. codici asp utilizzati) per permettervi di valutare e di suggerirmi meglio il da farsi?
anticipo solo che per sviluppare il tutto ho utilizzato Dreamweaver, so che non è amatissimo dagli sviluppatori, ma lo trovo molto intuitivo, specie per chi è alle prime armi, e finora mi sono trovata molto bene... spero quindi che questo elemento non rappresenti un limite tecnico o un ulteriore ostacolo a ciò che vorrei utilizzare, e che potrete comunque aiutarmi!
grazie mille in anticipo per l'aiuto, ciao ciao!
t.
593 messaggi dal 09 ottobre 2002
www.dotnetside.org
Per questo uso le session non vanno per niente bene.

Se hai bisogno di far persistere i dati oltre la durata della sessione (è SOLO questo l'ambito di validità delle variabili Session) devi usare i cookies impostando magari una scadeza congrua, chessò uno o due giorni....

Pochi post. Anzi, quasi quasi spengo
http://www.dotnetside.org/
19 messaggi dal 23 settembre 2005
L'uso delle Session deve essere fatto con parsimonia perchè caricano il server che deve utilizzare un po' di memoria ogni volta che se ne istanzia una.

Anch'io le ho utilizzate in pagine in cui bisognava tener traccia dei campi dei form da una pagina all'altra (magari per fare un controllo server-side di errori nell'inserimento) però invece di creare una Session per ogni campo ne creo una sola e ci associo un array con tutti i dati.

es:
dim arrSessione(10)

arrSessione(0) = Request("campo_nome")
arrSessione(1) = Request("campo_cognome")
arrSessione(2) = Request("campo_indirizzo")
...
arrSessione(9) = Request("campo_qualsiasi")

Session("MM_DatiUtente") = arrSessione

Quando la devi richiamare basta fare il percorso contrario:

ad es:
arrDatiUtente = Session("MM_DatiUtente")
Response.Write(arrDatiUtente(0)) 'Scrive il nome utente
Response.Write(arrDatiUtente(1)) 'Scrive il cognome utente


Comunque, come diceva vitosulla, tutto quello che memorizzi in una Session "sparisce" non appena l'utente esce dal tuo sito.

Se non puoi usare un DB per mantenere i dati io salverei (vedi FileSystem) un file txt sul tuo server con tutti i dati inseriti nel form (magari una riga per ogni campo) e piazzerei un cookie che contenga solo il nome di quel file.

La volta successiva in cui l'utente si collega vai a leggere quel cookie che ti dice da quale file andare a prendere i dati e riempi il form con quelli.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.