<%
Dim azione, cliente
cliente = Session("IDCliente")
azione = Trim(Request.QueryString("act"))
Select Case azione
Case "elimina"
Dim prodottoDel, clienteDel, idDel
prodottoDel = CInt(Request.QueryString("idProdDel"))
clienteDel = CInt(Request.QueryString("idClienteDel"))
idDel = CInt(Request.QueryString("id"))
Dim sqlDelete
sqlDelete = "DELETE FROM tbcarrello WHERE IDProdotto=" & prodottoDel & " And IDCliente=" & clienteDel & " And ID=" & idDel
'response.Write(sqlDelete):response.End()
objConn.Execute(sqlDelete)
Case "add"
Dim IDprodotto, marca, modello, desc, prezzo, quantita
IDprodotto = Trim(Request.QueryString("IDProdotto"))
marca = Trim(Request.QueryString("marca"))
modello = Trim(Request.QueryString("modello"))
desc = marca + " " + modello
quantita = CInt(Trim(Request.QueryString("qt")))
prezzo = CDbl(Trim(Request.QueryString("prezzoProd")))
Dim sqlInsert
sqlInsert = "INSERT INTO tbcarrello (IDCliente, IDProdotto, Descrizione, Quantita, PrezzoUnitario, PrezzoTotale) " &_
"VALUES (" & cliente & ", " & IDProdotto & ", '" & desc & "', " & quantita & ", '" & prezzo & "', '" & prezzo * quantita & "')"
'response.Write(sqlInsert):response.End()
objConn.Execute(sqlInsert)
Case "aggiungi"
Dim invio
invio = CInt(Request.Form("n"))
If invio = 0 Then
Dim arrQt, arrIdProd, arrPrezzo
arrQt = split(Request.Form("quantita"),",")
arrIdProd = split(Request.Form("IDProd"),",")
arrPrezzo = split(Request.Form("prezzoUnit"),",")
Dim sqlUpdate, k
For k = lbound(arrQt) To ubound(arrQt)
sqlUpdate = "UPDATE tbcarrello SET Quantita=" & CInt(arrQt(k)) & ", PrezzoTotale=" & CDbl(arrPrezzo(k)) * CInt(arrQt(k)) & " WHERE IDCliente=" & cliente & " And IDProdotto= " & arrIdProd(k)
'Response.Write(sqlUpdate):response.End()
objConn.Execute(sqlUpdate)
Next
Else
Dim arrQt2, arrIdProd2, arrPrezzo2
arrQt2 = split(Request.Form("quantita"),",")
arrIdProd2 = split(Request.Form("IDProd"),",")
arrPrezzo2 = split(Request.Form("prezzoUnit"),",")
Dim sqlCount
sqlCount = "SELECT COUNT(*) AS totale FROM tbcarrello WHERE IDCliente =" & cliente
Dim rsCount, errore
errore = false
Set rsCount = objConn.Execute(sqlCount)
If rsCount("totale") <= 0 Then
Response.Write("NO")
End If
rsCount.close
Set rsCount = Nothing
Dim sqlConferma, articoli
For k = lbound(arrQt2) To ubound(arrQt2)
'################# Conferma Acquisto ##############################
Dim sqlProdotto, rsProdotto
sqlProdotto = "SELECT * FROM tbprodotti WHERE IDProdotto ='" & arrIdProd2(k) &"'"
Set rsProdotto= objConn.Execute(sqlProdotto)
sqlConferma = "INSERT INTO tbacquisti (IDCliente, Articolo, Quantita, PrezzoUnitario, Totale, DataOra) " &_
"VALUES (" & cliente & ", '" & rsProdotto("MarcaProdotto") + " " + rsProdotto("ModelloProdotto") & "', " & arrQt2(k) & ", " & Cdbl(arrPrezzo2(k)) & ", " & CDbl(arrPrezzo2(k) * arrQt2(k)) & ", NOW())"
'response.Write(sqlConferma):response.End()
objConn.Execute(sqlConferma)
'##################### Aggiornamento Quantita ####################################
Dim sqlDisp
sqlDisp = "UPDATE tbprodotti SET Disponibilita =" & CInt(rsProdotto("Disponibilita")) - CInt(arrQt2(k)) & " WHERE IDProdotto=" & arrIdProd2(k)
objConn.Execute(sqlDisp)
'#################### Aggiornamento Disponibilita ##############################
Dim sqlNewDisp
sqlNewDisp = "SELECT * FROM tbprodotti WHERE IDProdotto ='" & arrIdProd2(k) &"'"
Dim rsNewDisp
Set rsNewDisp= objConn.Execute(sqlNewDisp)
If rsNewDisp("Disponibilita") = 0 Then
Dim sqlDisp2
sqlDisp2 = "UPDATE tbprodotti SET StatoProdotto = 'false' WHERE IDProdotto=" & arrIdProd2(k)
objConn.Execute(sqlDisp2)
End If
'###################### Articoli Ordinati #######################################
articoli = articoli + "Articolo : " + rsProdotto("MarcaProdotto") + " " + rsProdotto("ModelloProdotto") + " Quantita : " + arrQt2(k) + " Prz. Unitario " + formatCurrency(arrPrezzo2(k)) + " Prz. Totale : " + formatCurrency(CDbl(arrPrezzo2(k) * arrQt2(k))) & Chr(10)
Next
'***********************************
'INVIO MAIL
Dim sqlMail, rsMail
sqlMail = "SELECT * FROM tbclienti WHERE IDCliente ='" & cliente &"'"
Set rsMail = objConn.Execute(sqlMail)
...........
..........................
rsMail.close
Set rsMail = Nothing
rsNewDisp.close
Set rsNewDisp = Nothing
rsProdotto.close
Set rsProdotto = Nothing
'*********************************
Dim sqlSvuota2
sqlSvuota2 = "DELETE FROM tbcarrello WHERE IDCliente=" & cliente
objConn.Execute(sqlSvuota2)
End If
Case "svuota"
Dim sqlSvuota
sqlSvuota = "DELETE FROM tbcarrello WHERE IDCliente=" & cliente
objConn.Execute(sqlSvuota)
End Select
Dim utenti, varNewsletter
utenti = Application("Utenti")
varNewsletter = Request.Form("email")
If varNewsLetter <> "" Then
Dim sqlNL
sqlNL = "INSERT INTO tbnewsletter (Email, DataOraReg) VALUES ('" & varNewsletter &"', NOW())"
objConn.Execute(sqlNL)
End If
%>
Se invio quando sono stati fatti acquisti funziona benissimo, mentre se il carrello e vuoto mi da questo errore:
Errore di run-time di Microsoft VBScript error '800a01a8'
Necessario Oggetto: "
line 195(riga rossa)
Aiutatemi, forse non ho chiuso qualke oggetto......boh


Rispondi quotando