Calcolo incremento quantita acquisto

helpdesk

Utente Attivo
30 Set 2009
726
0
0
Pesaro
Salve ragazzi ho un problema.
Dovrei riuscire ad incrementare la quantità di un prodotto messo nel carrello ogni volta
che lo stesso viene immesso nel carrello.
Esempio se inserisco un prodotto nel carrello vaso piante la prima volta
invierò al carrello vaso piante quantità 1.
Passo alla schermata continua con gli acquisti o vai alla cassa
al click di uno dei due tasti invio la query di insert al carrello e inserisco il prodotto.
Sino a qui tutto ok.
Ma se scelgo continua con gli acquisti?
Continuando con gli acquisti devo recuperare la quantità di quel prodotto se ci riclicco
e poi aumentarla di uno giusto?
Ho pensato di fare in questo modo ma non mi funziona poichè fanno conflitto le query e non ho ancora imparato come farle funzionare insieme :(

PHP:
<?PHP 
// APRO LA SESSIONE PER RICONOSCERE L'UTENTE // 
session_start(); 
header('Cache-Control: no-cache'); 
header('Pragma: no-cache'); 
$dbhost = 'localhost'; 
$dbuser = 'dbuser'; 
$dbpass = 'dbpass'; 
$dbname = 'dbname'; 

$connessione = mysql_connect("localhost", "dbuser", "dbpass") or die("Impossibile connettersi al server host"); 
mysql_select_db(dbname, $connessione) or die ("Impossibile selezionare il database."); 

$dialogo="risposta=".$dialogo; 

// INVIO I DATI DAL FORM // 

$Nome_prodotto=$_POST['nome_prodotto']; 
$Prezzo=$_POST['prezzo']; 
$Quantita=1; 
$Prezzo_fisso=$_POST['prezzo_fisso']; 
$Euro=$_POST['euro']; 
$zeri=number_format($Prezzo, 2, ',', '.'); 
$cifra=$zeri; 
$calcolo= number_format($Prezzo, 2, ',', '.'); 
$memoria=$Quantita; 
$Idp=$_POST["idp"];


if(isset($_SESSION['id_utenti'])){ 

// FACCIO UNA QUERY DI SELECT PER RECUPERARE L'ID UTENTE E INVIARLO AL CARRELLO PRODOTTI COSI' FACENDO POTRO' EVIDENZIARE SOLO I PRODOTTI ACQUISTATI DA MARIO ROSSI" 

$sql = mysql_query("SELECT * FROM iscritti WHERE id_utenti=".$_SESSION['id_utenti']); 
$iu=$_SESSION['id_utenti']; 

// INVIO L'ACQUISTO AL CARRELLO // 

$query="INSERT INTO acquisti (id_utenti,nome_prodotto,prezzo,quantita,calcolo,prezzo_fisso) VALUES ('$iu','$None_prodotto','$Prezzo','$Quantita','$calcolo','$Prezzo_fisso')"; 

// FACCIO UNA SELECT PER RICONOSCERE LA QUANTITA' DEL PRODOTTO SPECIFICATO // 

$sql = mysql_query("SELECT quantita FROM acquisti WHERE idp=$Idp"); 
$riga = mysql_fetch_array($sql); 
$dati[]= $riga['quantita']; 

// CONDIZIONALE PER AGGIONARE LA QUANTITA' SE LA QUANTITA' E MAGGIORE O UGUALE A 1 FACCIO LA QUERY DI UPDATE INCREMENTANDO DI 1 IL VALORE//

if($dati=>1){ 
$dati=$dati+1; 
$query = "UPDATE acquisti SET nome_prodotto='$Nome_prodotto',prezzo='$Prezzo',calcolo='$memoria',quantita='$dati' WHERE nome_prodotto= '$Nome_prodotto'"; 
} 


if (mysql_query($query,$connessione)){ 
$risposta='dati scritti'; 
echo "risposta=".$risposta; 
}else{ 
$risposta='dati non scritti'; 
echo "risposta=".$risposta; 
} 

} 

mysql_close($connessione); 

?>
 
Ultima modifica:
Mi da questo errore: Parse error: syntax error, unexpected T_DOUBLE_ARROW in D:\inetpub\vhosts\hosting.it\httpdocs\e.commerce\php\inserimento_acquisti.php on line 36
Inoltre so per certo che più query insieme fanno conflitto ma non so come si inseriscono più query senza avere problemi :(
 
PHP:
if($dati=>1){
devi cambiarlo in
PHP:
if($dati>=1){

Al di là di questo per incrementare di 1 la quantità del prodotto basta fare l'update della quantità (e del prezzo totale eventualmente) senza dover aggiornare il nome del prodotto né l'id utente che chiaramente non sono nel frattempo cambiati.
Ti servirà fare una query per ogni prodotto aggiunto (qualcosa del tipo SELECT * FROM prodotto WHERE id_prodotto=$id). Se num_rows()=0 (ovvero non esiste) allora fai l'INSERT altrimenti fai l'update della riga trovata.

più query insieme fanno conflitto
bisogna vedere prima in che contesto o di che problema specifico parli :)
 

Discussioni simili