34 messaggi dal 29 luglio 2005
purtroppo sono alle prime armi con asp e ho delle difficoltà ad andare avanti nell'inviare i dati del carrello in una tabella ordini.
Ho creato il carrello nella variabile session grazie a dei tutorial trovati in rete ma non riesco ad andare avanti. Sono arrivato a questo punto:
Ho creato il carrello tramite variabile session con il seguente codice

<%
Session.Timeout=40

' Definizioni delle costanti
CONST CARTPID=0
CONST CARTPNAME=1
CONST CARTPPRICE=2
CONST CARTPQUANTITY=3

' Creazione del carrello della spesa
IF NOT isArray(Session("cart")) THEN
DIM localCart(4, 20)
ELSE
localCart=Session("cart")
END IF

' Estrazione informazioni sul prodotto
productCod=TRIM(Request("cod"))
productDesc=TRIM(Request("desc"))
productPrice=TRIM(Request("price"))

' Aggiunta dell'articolo al carrello
IF productCod <> "" THEN
foundIT = FALSE
FOR i=0 TO UBOUND(localCart)
IF localCart(CARTPID, i) = productCod THEN
localCart(CARTPQUANTITY, i)= localCart(CARTPQUANTITY, i) + 1
foundIT=TRUE
EXIT FOR
END IF
NEXT
IF NOT foundIT THEN
FOR i=0 TO UBOUND(localCart, 2)
IF localCart(CARTPID, i )="" THEN
localCart(CARTPID, i )=productCod
localCart(CARTPNAME, i )=productDesc
localCart(CARTPPRICE, i )=productPrice
localCart(CARTPQUANTITY, i )=1
EXIT FOR
END IF
NEXT
END IF
END IF

' Aggiornamento quantità nel carrello della spesa
IF Request("updateQ") <> "" THEN
FOR i=0 TO UBOUND(localCart, 2)
newQ=TRIM(Request("pq" & localCart(CARTPID, i)))
deleteProduct=TRIM(Request("pd" & localCart(CARTPID, i)))
IF newQ="" or newQ="0" or deleteProduct <> "" THEN
localCart(CARTPID, i)= ""
ELSE
IF isNumeric(newQ) THEN
localCart(CARTPQUANTITY,i)=newQ
END IF
END IF
NEXT
END IF

' Aggiornamento variabile Session con array
Session("cart")=localCart
%>

<body>
<%
orderTotal=0
%>

<%
FOR i=0 TO UBOUND(localCart, 2)
IF localCart(CARTPID, i) <> "" THEN
orderTotal=orderTotal + (localCart(CARTPPRICE, i)*localCart(CARTPQUANTITY, i))
%>
<tr id="header3">
<td width="160" height="40" bgcolor="#D5DCE9" align="center" valign="middle">
<%=Server.HTMLEncode(localCart(CARTPNAME, i))%>
</td>
<td width="70" height="40" bgcolor="#D5DCE9" align="center" valign="middle">
<%=formatCurrency(localCart(CARTPPRICE, i))%>
</td>
<td width="152" height="40" bgcolor="#D5DCE9" align="center" valign="middle">
<input name="pq<%=localCart(CARTPID, i)%>" type="text" size="4"
value="<%=localCart(CARTPQUANTITY, i)%>">
<input name="pd<%=localCart(CARTPID, i)%>" type="checkbox" value="1"> Elimina
</td>
</tr>
<%
END IF
NEXT
%>
<tr id="header3">
<td width="240" height="30" bgcolor="#FFF200" colspan="2">
<p align="right"><b>Totale Ordine:&nbsp;&nbsp;&nbsp;
</b></td>
<td width="152" height="30" bgcolor="#FFF200" colspan="2">
<%=formatCurrency(orderTotal)%>
</td>
</tr>

Poi di seguito ci sono i pulsanti che del form 'ordina', 'continua shopping'.
Come devo fare per far sì che quando si clicca sul pulsante ordina venga richiamata una pagina nella quale venga fatto il login o la registrazione? e dopo i prodotti vengano inviati alla tabella ordini di quel dato utente? Come faccio a richiamare i dati contenuti nel carrello nella variabile session da un'altra pagina?
Ringrazio in anticipo coloro che possano darmi un aiutino
9 messaggi dal 27 aprile 2006
Ciao .
Sono neofita anche io ma spero di tornarti utile.

Per richiamare i dati inseriti in variabili session puoi usare (supponiamo che q5 sia la variabile ubicata in session)

<% o5 = Session("q5")%>

detto ciò memorizzati i dati dovresti essere in grado di richiamarli da qualsiasi altra pagina.

Evander IV
Lo diceva anche er Dante
Meglio povero che 'gnorante
In realtà il codice che hai postato è una piccola parte, il motore del carrello elettronico è di una certa complessità. Ti consiglio di guardare su questo sito un esempio completo di carrello. Come ti ha consigliato Evander IV per portare avanti i dati è necessario utilizzare semplicemente le session. Per inviare i prodotti alla tabella ordini di un dato utente ti conviene creare dei valori numerici univoci che distinguano i singoli clienti, i prodotti e gli ordini per rendere più semplici le query.

Alberto Biancardo
34 messaggi dal 29 luglio 2005
Se io ho un id univoco nel database per gli utenti i prodotti e gli ordini non va bene?
Ho provato a cercare su questo sito alcuni esempi di carrello completo ma non ho trovato nulla...
comunque grazie per la vostra disponibilità
34 messaggi dal 29 luglio 2005
Se io ho un id univoco nel database per gli utenti i prodotti e gli ordini non va bene?
Ho provato a cercare su questo sito alcuni esempi di carrello completo ma non ho trovato nulla...
comunque grazie per la vostra disponibilità
Si ma devi creare le relazioni fra i campi delle tabelle interessate.

Alberto Biancardo

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.