Sumar cantidad de productos en php
¿Cómo estas?
Ayer te hice algunas preguntas, espero que te acuerdes de mi.
Me di cuenta que hay un problema.
Por ej si el cliente selecciona que quiere comprar 3 unidades de un articulo y luego se le ocurre que quiere comprar otras 3 del mismo, en mi lista donde aparece todo lo que compro esas unidades no se suman, es más aparece así:
1
1 Balanza 150 kgs
3
3
3 Jarra Eléctrica
1 Vibratone
No solo que no se suman sino que aparece el nombre una sola vez.
Me gustaría que si son 6 las unidades totales que compro aparezca el 6, no 3 y 3.
Te copio el código que en gran parte es lo que vos me pasaste.
Te recuerdo que en mi base de datos hay tres tablas, una de clientes con todos sus datos, una de productos y otra de realcion de ambas que aparecen el id del cliente, el id del producto y el precio de cada producto que se agrego.
$result=mysql_query("select * from orden where id_zona=1 order by fecha");
while($row=mysql_fetch_array($result)){
echo '
<div id="listado1"><br /><span class="fecha">|'.$row['fecha'].'|</span><br /><br /><b>'.$row['nom_ape'].'</b> ha solicitado los siguientes productos: <br />';
$result2=mysql_query("select * from rel_ord_prod where id_orden=".$row['id']);
$productos = array();
while($rowpedidos=mysql_fetch_array($result2)){
array_push($productos, $rowpedidos['id_productos']);
$total += $rowpedidos['precio']*$rowpedidos['cantidad'];
}
$result3 = mysql_query("select * from productos where id in (".implode(',',$productos).")");
echo "
<ul>
";
while($rowproductos=mysql_fetch_array($result3)){
$result4 = mysql_query("select * from rel_ord_prod where id_orden=".$row['id']." and id_productos=".$rowproductos['id']);
while($cantidad=mysql_fetch_array($result4)){
echo '
<li>'.$cantidad['cantidad'].' ';
}
echo $rowproductos['nombre'].'</li>
';
}
echo "
</ul>
";
echo '
<div class="izq"><span>Usuario: </span>'.$row['usuario'].'</div>
';
echo '
<div class="izq"><span>Direccion: </span>'.$row['direccion'].'</div>
';
echo '
<div class="izq"><span>Horario: </span>'.$row['horario'].'</div>
';
echo '
<div class="izq"><span>Telefonos: </span>'.$row['telefono'].'</div>
';
$result4 = mysql_query("select * from metodo_pago where id =".$row['id_metodo']);
while($rowmetodo=mysql_fetch_array($result4)){
echo '
<div class="izq"<span>Metodo de pago: </span>'.$rowmetodo['valor'].'</div>
';
}
echo '
<div class="izq"><span>Comentarios: </span>'.$row['comentarios'].'</div>
';
echo '
<div class="izq"><span>Valor de envio: </span>$ 0.-</div>
';
echo '
<div class="izq"><span>Total a pagar: </span>$ '.$total.'</div>
';
echo '
<div class="izq"><span>Abona con: </span>'.$row['abona_con'].'.-</div>
';
echo '
<div id="links"><a class="mod_borr" href="envios.php?seccion=7&cli='.$row["id"].'">modificar</a><span id="minil">|</span> ';
echo '<a class="mod_borr" href="borrar_cl.php?cli='.$row["id"].'">borrar</a></div>
</div>
';
echo '<img src="linea.png" id="linea" />';
unset($total);
}
Ayer te hice algunas preguntas, espero que te acuerdes de mi.
Me di cuenta que hay un problema.
Por ej si el cliente selecciona que quiere comprar 3 unidades de un articulo y luego se le ocurre que quiere comprar otras 3 del mismo, en mi lista donde aparece todo lo que compro esas unidades no se suman, es más aparece así:
1
1 Balanza 150 kgs
3
3
3 Jarra Eléctrica
1 Vibratone
No solo que no se suman sino que aparece el nombre una sola vez.
Me gustaría que si son 6 las unidades totales que compro aparezca el 6, no 3 y 3.
Te copio el código que en gran parte es lo que vos me pasaste.
Te recuerdo que en mi base de datos hay tres tablas, una de clientes con todos sus datos, una de productos y otra de realcion de ambas que aparecen el id del cliente, el id del producto y el precio de cada producto que se agrego.
$result=mysql_query("select * from orden where id_zona=1 order by fecha");
while($row=mysql_fetch_array($result)){
echo '
<div id="listado1"><br /><span class="fecha">|'.$row['fecha'].'|</span><br /><br /><b>'.$row['nom_ape'].'</b> ha solicitado los siguientes productos: <br />';
$result2=mysql_query("select * from rel_ord_prod where id_orden=".$row['id']);
$productos = array();
while($rowpedidos=mysql_fetch_array($result2)){
array_push($productos, $rowpedidos['id_productos']);
$total += $rowpedidos['precio']*$rowpedidos['cantidad'];
}
$result3 = mysql_query("select * from productos where id in (".implode(',',$productos).")");
echo "
<ul>
";
while($rowproductos=mysql_fetch_array($result3)){
$result4 = mysql_query("select * from rel_ord_prod where id_orden=".$row['id']." and id_productos=".$rowproductos['id']);
while($cantidad=mysql_fetch_array($result4)){
echo '
<li>'.$cantidad['cantidad'].' ';
}
echo $rowproductos['nombre'].'</li>
';
}
echo "
</ul>
";
echo '
<div class="izq"><span>Usuario: </span>'.$row['usuario'].'</div>
';
echo '
<div class="izq"><span>Direccion: </span>'.$row['direccion'].'</div>
';
echo '
<div class="izq"><span>Horario: </span>'.$row['horario'].'</div>
';
echo '
<div class="izq"><span>Telefonos: </span>'.$row['telefono'].'</div>
';
$result4 = mysql_query("select * from metodo_pago where id =".$row['id_metodo']);
while($rowmetodo=mysql_fetch_array($result4)){
echo '
<div class="izq"<span>Metodo de pago: </span>'.$rowmetodo['valor'].'</div>
';
}
echo '
<div class="izq"><span>Comentarios: </span>'.$row['comentarios'].'</div>
';
echo '
<div class="izq"><span>Valor de envio: </span>$ 0.-</div>
';
echo '
<div class="izq"><span>Total a pagar: </span>$ '.$total.'</div>
';
echo '
<div class="izq"><span>Abona con: </span>'.$row['abona_con'].'.-</div>
';
echo '
<div id="links"><a class="mod_borr" href="envios.php?seccion=7&cli='.$row["id"].'">modificar</a><span id="minil">|</span> ';
echo '<a class="mod_borr" href="borrar_cl.php?cli='.$row["id"].'">borrar</a></div>
</div>
';
echo '<img src="linea.png" id="linea" />';
unset($total);
}
1 respuesta
Respuesta de Chari Saiz
1