Ciao!
ho visto il tuo carrello è molto carino solo che io sono unaprincipiante e lo trovo abb complesso per adattarlo alle mie esigenze...
allora ti posto il codice, questo è della pagina dettaglio_art.asp:
[CODE]
<form name="form2" method="post" action="car.asp">
<input type="hidden" name="idprodotto" value="<%=rsProdotti("id")%>">
<input type="hidden" name="mprod" value="<%=rsMarca("idmarca")%>">
<input type="image" src="../images/carrello.gif" value="Submit" alt="Submit"></form>CODE]
Praticamente un'immagine con il carrello con campi nascosti dell'id del prodotto, id della marca.
va in pagina car.asp
codice:
<%@LANGUAGE="VBSCRIPT"%>
<%
idprodotto = Request("idprodotto")
%>
semplicemente apro la connessione ai 2 DB e includo la pagina carrello.asp (ecco io qui vorrei eliminare la pagina car.asp e fare il tutto in carrello.asp, però mi crea problemi.
questa è la pagina carrello.asp
codice:
<%
' Dichiaro le variabili
Dim qtaprodotto
' Assegno un valore alle variabili
qtaprodotto = 1
' Se la variabile idprodotto NON è vuota allora procedo
If idprodotto <> "" then
'Seleziona il prodotto dal carrello
sqlCarrello = "SELECT * FROM CARRELLO"
Set rsCarrello = conn.Execute(sqlCarrello)
' Controllo se il carrello è vuoto
If rsCarrello.eof then
' Se non è presente nessun prodotto allora creo un nuovo record nella tabella CARRELLO
SqlCarrello1 = "INSERT INTO CARRELLO (CAR_IDPRODOTTO, CAR_QUANTITA) VALUES ("& idprodotto & ", " & qtaprodotto & ")"
Else
' Se il prodotto è presente allora incremento il valore di uno (significa che ho aggiunto un prodotto ad un prodotto già inserito, dato
' che inizialmente non posso decidere la quantità che è quindi uguale ad uno)
SqlCarrello1 = "UPDATE CARRELLO SET CAR_QUANTITA = " & qtaprodotto + 1 & " WHERE CAR_IDCARRELLO = " & rsCarrello("CAR_IDCARRELLO")
End if
' Chiudo il recordset precedente
rsCarrello.Close
Set rsCarrello = Nothing
' Eseguo la stringa SQL del risultato dell’ If … Else … End if precedente
conn.Execute (SqlCarrello1)
End if
' Aggiorno la quantità del prodotto o lo cancello del tutto dalla tabella CARRELLO
' Se il campo form updateQta non è vuoto…
If Request.Form("updateQta") <> "" THEN
Set rsCarrello = Server.CreateObject("ADODB.Recordset")
sqlCarrello = "SELECT * FROM CARRELLO"
rsCarrello.Open sqlCarrello, conn ' Apro i cursori tramite adovbs.inc (3, 3)
' Eseguo il ciclo fintanto che ci sono record…
While not rsCarrello.EOF
' Tolgo gli spazi recupero in modo dinamico il campo quantità e leggo la nuova
newQta = TRIM(Request("pq" & rsCarrello("CAR_IDCARRELLO")))
' Se la nuova quantità del prodotto è vuota o uguale a 0 allora cancello il record dalla tabella CARRELLO
if newQta = "" OR newQta = "0" then
rsCarrello.delete
' Altrimenti se è numerica assegno al record il nuovo valore della quantità
Else
If isNumeric(newQta) Then
rsCarrello("CAR_IDCARRELLO") = newQta
End if
End if
' Scorro in avanti il record
rsCarrello.movenext
Wend
' Chiudo il recordset
rsCarrello.close
set rsCarrello = Nothing
End if
%>
<center>
<%
'Apriamo recordset per invio visualizzare i prodotti presenti nel carrello
sqlCarrello = "SELECT * FROM CARRELLO WHERE CAR_IDPRODOTTO =" & idprodotto & " ORDER BY CAR_IDCARRELLO DESC"
' Apro il recordset per mostrare i prodotti
Set rsCarrello = conn.execute (sqlCarrello)
'Apriamo recordset per invio visualizzare i prodotti presenti nel carrello
sqlCarrello1 = "SELECT * FROM LISTASTAMPA WHERE id =" & rsCarrello("CAR_IDPRODOTTO") & " ORDER BY id DESC"
' Apro il recordset per mostrare i prodotti
Set rsCarrelloProd = conn_locale.execute (sqlCarrello1)
' Scorro i record finchè non è vuoto, quindi mostro tutti I prodotti
If rsCarrelloProd.eof then
' Se è vuoto scrivo un messaggio che il carrello non contiene nessun prodotto e faccio continuare gli acquisti
%>
<font face="verdana" size="2">Nessun prodotto presente nel tuo carrello!</font>[/b]
<form action="default.asp">
<input type="submit" value="Continua acquisti">
</form>
<%
Else
' Altrimenti visualizzo I prodotti nel form del carrello e setto la variabile ordine a 0
ordine = 0
%>
<table border="1" cellpadding="4" cellspacing="0">
<form method="post" action="car.asp?idprodotto=<%=idprodotto%>">
<input name=" updateQta" type="hidden" value="1">
<input name="username" type="hidden" value="<%=username%>">
<input name="password" type="hidden" value="<%=password%>">
<tr>
<td><p align=center><font face=verdana size=2>Prodotto</font></p></td>
<td><p align=center><font face=verdana size=2>Prezzo</font></p></td>
<td><p align=center><font face=verdana size=2>Quantità </font></p></td>
</tr>
<%
While not rsCarrelloProd.eof
' La variabile ordine ora si incrementa con il prezzo del prodotto per la quantità dello stesso
qta = rsCarrello("CAR_QUANTITA")
prezzo = rsCarrelloProd("prezzoiva")
totpar = qta * prezzo
'Response.Write(qta & " quantità" & "
")
'Response.Write(prezzo & " prezzo")
'Response.End()
ordine = ordine + totpar
'Response.Write(ordine & "ciao")
%>
<tr>
<td><font face=verdana size=2><%=rsCarrelloProd("PROD_MODELLO")%></font></td>
<td><p align=right><font face=verdana size=2><%=formatCurrency(rsCarrelloProd("prezzoiva"))%></font></p></td>
<td><p align=right><input name="pq<%= rsCarrello("CAR_IDCARRELLO")%>" type="text" size=2 value="<%= rsCarrello("CAR_QUANTITA")%>"></p></td>
</tr>
<%
rsCarrelloProd.movenext
Wend
%>
<tr>
<td colspan=2 align=right><font face=verdana size=2>Valore ordine totale:</font></td>
<td><p align=right><font face=verdana size=2><%=formatCurrency(ordine)%></font></p></td>
</tr>
<tr>
<td colspan=3></td></tr></table>
<table border="0">
<tr>
<td align="right"><input type="submit" value="Aggiorna carrello"></td>
</form>
<form method="post" action="termina.asp">
<input name="username" type="hidden" value="<%=username%>">
<input name="password" type="hidden" value="<%=password%>">
<td>
<input type="submit" value="Termina ordine">
</td>
</form>
<form action="default.asp">
<td><input type="submit" value="Continua acquisti"></td>
</form>
</tr>
</table>
</td>
</tr>
</table>
<% End if %>
</center>
<%
rsCarrello.close
Set rsCarrello = nothing
conn.close
Set conn = nothing
%>
ovviamente sono partita da pezzi di codice trovati sul forum e forse ho fatto un pò di casini inoltre ho il problema di fare una SELECT in due tabelle residenti in due DB differenti...
lo so lo so sono una frana... spero almeno in qualche consiglio