Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187

    Problema aggiorna carrello

    Ciao a tutti,
    ho un problema sull'aggiornamento del carrello elettronico, o meglio non capisco come fare io da dettaglio_prodotti.asp passo con tramite querystring l'idprodotto, e vado nella pagina carrello.asp che riporta l'idprodotto faccio una SELECT per mostrare i prodotti in carrello e ok, ma quando vado a premere il pulsante aggiorna carrello, nel caso ho cambiato le quantità del prodotto, mi dice parametro mancante idprodotto... io aggiorna carrello lo faccio tramite form nella stessa pagina carrello... non so dove sbaglio forse dovrei usare le variabili di sessione?

    aiutooo

  2. #2
    dovresti postare del codice....

    per iniziare la parte iniziale del <form

    poi verifica se la pagina che richiama immagino sia la stessa carrello.asp ha all'inizio il richiamo dell' idarticolo!

  3. #3
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187
    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

  4. #4
    perdonami....

    se non hai urgenza di mettere online il sito,
    sarica il mio ....
    mettilo online o in locale, provalo.....
    è già funzionante devi solo mettere la parte grafica!

    guarda cosa ho realizzato io con quel carrellino li'

    IL MIO SITO

    ciao.... 31/08

  5. #5


    dimenticavo....

    poi se hai bisogno di aiuto chiedimi pure!


  6. #6
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187
    Ciao Jacqui,
    si ho già visto il tuo sito e anche scaricato il tuo script (complimenti molto bello, molto più bello anche graficamente!)

    ma l'ho trovato abbastanza "ostico" (forse dovuto al mio modo di "programmare" molto più semplice e da principiante) da capire per quello che poi ho preferito non utilizzarlo, cmq ci posso provare se mi dai una mano te...
    il mio problema di base è cmq quello delle SELECT su due DB che non posso cambiare, hai qualche suggerimento per fare una SELECT su due tabelle ma in due DB differenti?
    Anche nelcaso che adotto il tuo il DB prodotti deve essere su un altro DB...

    A me proprio non riesce...

    Ciao e grazie

  7. #7
    per prelevare dati da due tabelle tra loro collegate devi usare inner join

    es.:

    prendi la descrizione dalla tabella2 dell'articolo x che trovi nella tabella1

    prova a leggere questo mio vecchio Post

  8. #8
    If idprodotto <> "" then
    'Seleziona il prodotto dal carrello
    sqlCarrello = "SELECT * FROM CARRELLO where car_idprodotto ='"&idprodotto&"' "
    Set rsCarrello = conn.Execute(sqlCarrello)

    intanto devi trovare lo stesso prodotto...


    poi se all'inizio metti qtaprodotto = 1 anche se la modifichi troverai sempre 1

    metti
    qtaprodotto=request("pq&rsCarrello("CAR_IDCARRELLO ")") per esempio
    if qtaprodotto = 0 then
    if ISNULL(qtaprodotto) OR qtaprodotto="" then qtaprodotto=1

  9. #9
    Utente di HTML.it L'avatar di nadia79
    Registrato dal
    Aug 2005
    Messaggi
    187
    Ciao Jacqui,

    codice:
    strSQL="SELECT adottati.*, articoli.* FROM adottati ON adottati.idarticolo = articoli.id"
    grazie per il suggerimento, ma come faccio quando devo aprire il recordset? Ossia quale connessione uso se i DB sono due?

    rsProdotti.Open SQL, conn1

    ma non funzionerebbe se non apro anche la conn2... o no?

    Grazie per la pazienza

  10. #10
    basta una sola connessione......

    hai visto la mia risposta di prima?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.