Pagina AGGIORNA E VISUALIZZA Prodotti Carrello
Codice PHP:
<?php session_start();
if (!isset($_SESSION['carrello'])) {
$carrello = array();
$carrello=$_SESSION['carrello'];
}
if (array_key_exists($_POST['id_prod'],$_SESSION['carrello']))
{
$_SESSION['carrello'][$_POST['id_prod']]['confezioni'] = $_POST['confezioni'];
}
else {}
if($_POST['Submit']) {
unset($_SESSION['carrello'][$_POST['codice']]);
}
require_once('Connections/cantina.php');
mysql_select_db($database_cantina, $cantina);
foreach ($_SESSION['carrello'] as $key) {
$ss=$key['id_prod'];
$dd=$key['confezioni'];
$query_Recordset4 = "SELECT * FROM listino WHERE codice_prodotto='$ss'";
$Recordset4 = mysql_query($query_Recordset4, $cantina) or die(mysql_error());
while($row4=mysql_fetch_row($Recordset4))
{
$aa_b_4=$row4[3]; ////Codice Prodotto
$aa_4=$row4[4]; /////Tipo Prododdo
$bb_4=$row4[5]; ////Formato Bottiglie
$cc_4=$row4[6]; ////Confezioni
$dd_4=$row4[7]; ////Formato_confezioni
//$ee_4=$row4[6]; ///Quantità Bottiglie
$ff_4=$row4[11]; ////Gradazione Alcolica
$gg_4=$row4[9]; ////Annata
$hh_4=$row4[10]; ////Prezzo
?>
<form id="form2" name="form2" method="post" action="">
<?php echo $aa_b_4;?>
<input name="id_prod" type="hidden" id="id_prod" value="<?php echo $aa_b_4;?>" />
<?php echo $aa_4;?><?php if($cc_4=='y') { echo "(Confezioni da $dd_4 Bottiglie)";} else {} ?>
<?php if($cc_4=='y') {?>
<input name="confezioni" type="text" id="confezioni" value="<?php echo $dd;?>" size="15" value=""; style="font-size:10px; text-align:cente" onchange="document.getElementById('form2').submit();"/>
<?php } else { ?>
<input name="confezioni" type="text" id="confezioni" style="font-size:10px; text-align:center" size="15" readonly="y" /> <?php }?>
<?php if($cc_4=='n') {?>
<input name="bottiglie" type="text" id="bottiglie" style="font-size:10px; text-align:center" value="1" size="15" />
<?php } else {?>
<input name="bottiglie" type="text" id="bottiglie" style="font-size:10px; text-align:center"value="" size="15" readonly="y"/>
<?php }?>
<input name="prez_unit" type="text" id="prez_unit" style="font-size:10px; text-align:center"value="<?php echo $hh_4;?>" size="20" />
<input name="totale" type="text" id="totale" style="font-size:10px; text-align:center"value="" size="15" readonly="y"/>
</form>
<form id="form3" name="form3" method="post" action="">
<input name="Submit" type="submit" id="Submit" style="font-size:10px" value="ELIMINA"/>
<input name="codice" type="hidden" id="codice" value="<?php echo $aa_b_4;?>" />
</form>
<?php }}?>
[url="Untitled-3.php"]SCEGLI PRODOTTO[/url]
Pagina Memorizza Prodotto
Codice PHP:
<?php session_start();
if (!isset($_SESSION['carrello'])) {
$carrello = array();
$carrello=$_SESSION['carrello'];
}
if($_POST['Submit']) {
if (array_key_exists($_POST['id_prod'],$_SESSION['carrello']))
{
$_SESSION['carrello'][$_POST['id_prod']]['confezioni'] += $_POST['confezioni'];
}
else
{
$_SESSION['carrello'][$_POST['id_prod']] = array('id_prod'=>$_POST['id_prod'],'confezioni'=>$_POST['confezioni']);
}
//header("Location: nuovo_ordine.php");
}
require_once('Connections/cantina.php');
mysql_select_db($database_cantina, $cantina);
$query_Recordset1 = "SELECT * FROM listino";
$Recordset1 = mysql_query($query_Recordset1, $cantina) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
do { ?>
<form id="form1" name="form1" method="post" action="">
<?php echo $row_Recordset1['codice_prodotto'];
echo $row_Recordset1['tipo_vino'];
echo $row_Recordset1['formato_bottiglie'];
echo $row_Recordset1['confezioni']; ?>
<input name="confezioni" type="hidden" id="confezioni" value="1" />
<input type="submit" name="Submit" value="CARRELLO" style="font-size:10px"/>
<input name="id_prod" type="hidden" id="id_prod" value="<?php echo $row_Recordset1['codice_prodotto']; ?>" />
</form>
<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
<a href="Untitled-2.php">Torna Al Carrello
</a>
Il mio problema è nella parte aggiorna carrello cioè la prima parte di codice che ho postato.
Per esempio inserisco 2 prodotti nel carrello con quantità 1,
Poi modifico il campo (confezioni) del primo prodotto della lista il quale ha la funzione onchange, quindi mi esegue il submit, esegue il codice riportato sotto
Codice PHP:
if (!isset($_SESSION['carrello'])) {
$carrello = array();
$carrello=$_SESSION['carrello'];
}
if (array_key_exists($_POST['id_prod'],$_SESSION['carrello']))
{
$_SESSION['carrello'][$_POST['id_prod']]['confezioni'] = $_POST['confezioni'];
}
else {}
e mi aggiorna e fino a a quì tutto bene,il problema viene se vado a modificare il campo (confezioni) del secondo prodotto della lista ( lo stesso succede per il terzo prodotto della lista e così via)
mi esegue la funzione onchange, quindi il submit ma i nuovi campi modificati non cambiano?
Cosa suggerite?