49 messaggi dal 28 maggio 2001
ho un carrello che si forma come segue:


'''''''''''''''''''''''''''
prodottoid = request("prodottoid")
qty = request("qty")

carrello = session("carrello")

if isarray(carrello) = false then

dim carrello(20, 1)
carrello(0, 0) = prodottoid
carrello(0, 1) = qty
session("carrello") = carrello
end if
''''''''''''''''''''''''''''''''''

il mio problema e che non so come fare per
memorizzare anche altre opzioni per un prodotto
tipo il colore, la misura, un'altro modello ecc.
chi mi aiuta grazie

223 messaggi dal 06 settembre 2002
Contributi
www.ebow.it
Rispondo in modo sintetico... essendo in fiera al webb.it!

Per aggiungere altri valori alla riga articolo potresti tranquillamente utilizzare l'array.

P.E.
dim carrello(20, 3)
carrello(0, 0) = prodottoid
carrello(0, 1) = qty
carrello(0, 2) = colore
carrello(0, 3) = taglia
etc.

Ciao


--
Lino Mari
Intermedia Srl
http://www.viadeimercanti.com - Il nuovo portale dell'e-business
http://www.imbnet.it - Intermedia Srl - Telematica e Multimedia

--
Lino Mari
http://www.ebow.it - e-business on web!
19 messaggi dal 04 agosto 2001
Perchè non usi una tabella del database al posto dell'array?
Io faccio così:
- definisco una struttura per il carrello atta a contenere i campi necessari (idutente, codice articolo, quantità, prezzo, taglia, misura... etc. etc.)
- idutente è l'account di un utente registrato che è stato autenticato dal server; invece se l'utente è anonimo uso session.sessionId come account

Vantaggi:
1) non faccio abbominevole uso di variabili di sessione
2) non ho limitazioni in merito al numero di articoli inseribili
3) se sono un utente registrato e abbandono il sito dopo aver caricato X articoli, rientrando nel sito successivamente (anche dopo giorni) sono sicuro di ritrovare il mio carrello per come l'avevo lasciato (ovviamente se sono un utente non autenticato perdo il contenuto del carrello all'avvio di una nuova sessione)

Svantaggi:
Nella tabella 'carrello' rimangono dei records 'orfani' che sono quelli generati dagli utenti non autenticati che hanno abbandonato il sito lasciando il carrello pieno.
Soluzione 1: procedura che periodicamente elimina i records che sono orfani da più di X giorni (basta che nella tabella 'carrello' memorizzi anche la data di immissione dei vari records)
Soluzione 2 (non testata ma dovrebbe funzionare): in global.asa -> session_OnEnd
inserisci una routine che elimina tutti i records di quella sessione)

Ciao



Roldy

Roldy
223 messaggi dal 06 settembre 2002
Contributi
www.ebow.it
E' vero che utilizzando un db ci sono alcuni vantaggi... ma questi sono tali se effettivamente serve avere traccia delle operazioni non andate a buon fine o per avere un carrello già aggiornato quando l'utente registrato torna sul sito.

In effetti le stragrande maggioranza delle operazioni non vanno a buon fine... quindi il db cresce senza uno scopo preciso, se il cliente (registrato) abbandona il carrello vuol dire che non ha voglia di acquistare, eventualmente potrebbe essere una funzionalità separata: "articoli preferiti" dove mettere una lista di articoli che sio acquista più spesso.

Tra le session e l'utilizzo di db c'è bisogno sempre di un compromesso... stà al programmatore capire per quel determinato sito quale sia il migliore. Anche in base alle esigenze specifiche.

Ciao e buone vacanze a tutti

--
Lino Mari
Intermedia Srl
http://www.viadeimercanti.com - Il nuovo portale dell'e-business
http://www.imbnet.it - Intermedia Srl - Telematica e Multimedia

--
Lino Mari
http://www.ebow.it - e-business on web!

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.