2 pagine in totale: <<Indietro 1 [2]
La Pagina VISUALIZZA CARRELLO (CARRELLO.ASP)
Questa pagina consentirà all'utente di visualizzare la lista dei prodotti desiderati, di modificarne la quantità, di eliminarli, di svuotare l'intero carrello oppure di confermare l'ordine.
Questa volta la dimensione dello script sarà piuttosto ridotta, con notevoli vantaggi in termini di gestione e comprensibilità. Illustro di seguito la sequenza delle azioni svolte dallo script:
- Verifica contenuto oggetto Session("CARRELLO") (attraverso la funzione isObject, che verifica se il tipo di una variabile è object);
- Analisi delle richieste inoltrate alla pagina. Le richieste possono provenire dal catalogo giochi (Inserimento) oppure dal carrello stesso (Cancellazione, Aggiornamento, Svuotamento).
- Costruzione della lista dei codici articolo da visualizzare attraverso una query SQL sulla tabella articoli, per recuperare le restanti informazioni (descrizione/prezzo).
- Calcolo e visualizzazione del totale dell'ordine.
I nomi di funzione assegnati nella precedente soluzione di carrello elettronico restano invariati, ma naturalmente dovremo cambiarne il contenuto.
- Funzione aggiungiArticoli()
Questa funzione preleva la lista degli articoli da inserire nel carrello dalla collezione request("articoli"), proveniente dal form contenuto nella pagina CATALOGO.ASP. Verifica innanzitutto la presenza di articoli nel DO carrello; infine, aggiunge gli articoli mancanti. Naturalmente tutte le verifiche sono evitate nel caso di carrello vuoto. L'inserimento di nuovi articoli può avvenire con il metodo
ADD(nome_chiave,valore)oppure semplicemente con l'assegnazione
CARRELLO(nuova_chiave)=valore - Funzione eliminaArticoli()
- Funzione aggiornaDati()
Questa funzione consente di aggiornare i dati relativi alle quantità dei singoli articoli i valori delle chiave del DO carrello) e di ricalcolare, di conseguenza, il totale del carrello. Quindi esamina tutti i text box presenti nel form della pagina CARRELLO.ASP ed aggiorna quantità e prezzi.
Questa funzione consente l'eliminazione degli articoli contrassegnati dall'utente, e fa uso della collezione request("elimina"), presente nel form della pagina stessa, per recuperare la lista degli articoli. Dopo aver verificato la presenza dell'articolo da eliminare, la funzione richiama il metodo
REMOVE(nome_chiave)per l'elemento e prosegue con i restanti secondo la lista di cui sopra.
La Pagina di CONFERMA ORDINE (CONFERMA.ASP)
L'utente esprime la propria volontà di acquistare il contenuto del carrello attraverso il link "Conferma ordine" presente in DEFAULT.ASP, oppure con il tasto "Conferma ordine" presente in CARRELLO.ASP. Quando richiesto dalla Home Page, l'utente è invitato a confermare se visualizzare il carrello prima di confermare, oppure procedere direttamente. Lo script contenuto nella pagina esegue semplicemente l'annullamento della variabile Session("CARRELLO"), in modo che il carrello risulti nullo.
Conclusioni
Ritengo che questa soluzione possa considerarsi molto valida per il nostro scopo, ma anche per obiettivi diversi, come elenchi di province, il profilo di un utente web, ecc. I metodi e proprietà disponibili sono di semplice utilizzo e offrono prestazioni di tutto rispetto, anche se una soluzione basata su componenti ed il contributo di MTS (Microsoft Transaction Server) conferirebbe la giusta scalabilità. La prossima soluzione (ultima della serie) è per me la più allettante dal punto di vista della familiarità e semplicità di implementazione, trattandosi di ADO.
Nel prossimo articolo...
Nel prossimo articolo analizzeremo la terza ed ultima soluzione, basata sull'uso dei Disconnected Recordset di ADO. Rinnovo l'invito a contattarmi per approfondire le soluzioni proposte. Stiamo valutando, infatti, la possibilità di continuare la serie di articoli adottando altre soluzioni, come componenti COM, MTS e gestione transazioni economiche sicure.
La serie completa
2 pagine in totale: <<Indietro 1 [2]
Attenzione: Questo articolo contiene un allegato
Contenuti dell'articolo
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.







Difficoltà
Utilità
Stampa
Download



