Ho un problema (come al solito...)
Un utente compra 3 articoli da un magazzino, questi 3 articoli hanno i codici (esempio) 1, 2 e 3.
Gli articoli hanno un campo "Venduti" che segnala il numero di volte che gli articoli sono stati venduti.
Quando l'utente conferma l'acquisto, una query deve aggiornare il database Magazzino incrementando di 1 il campo Venduti di ogni articolo che l'utente ha acquistato.
Ho scritto questo codice:
codice:
// INCREMENTA NUMERO VENDUTO
$dbvenduto = mysql_connect("$host", "$user_db", "$pass_db");
$res = mysql_db_query ("$nome_db", "select*from carrello where order_id = $order_id");
$num = mysql_num_rows ($res);
if ($num ==0)
echo "<Font Class=\"menu\"><Div Align=\"Center\">Il tuo carrello è vuoto!
";
for ($i=0; $i<$num; $i++)
{
$id_articolo = mysql_result ($res, $i, "id_articolo");
// QUI INCREMENTA CON UN ALTRA QUERY
$db1 = mysql_connect("$host", "$user_db", "$pass_db");
$sqlinterr = "update Magazzino set Venduto = Venduto +1 ";
$sqlinterr .= " where id = '$id_articolo' ";
mysql_db_query ("$nome_db", $sqlinterr);
$num = mysql_affected_rows();
if ($num>0)
{
// AUMENTA QUANTITA
echo "";
}
else
{
echo "";
}
mysql_close ($db1);
}
mysql_close($dbvenduto);
// FINE INCREMENTA IL NUMERO VENDUTO
Ma mi incrementa solo 1 articolo, l'ultimo inserito... Non me li incrementa tutti... come mai??
Grassie