Ver Mensaje Individual
  #7 (permalink)  
Antiguo 12/10/2007, 00:28
Patrón.Mortinato
 
Fecha de Ingreso: agosto-2007
Ubicación: En el lugar menos pensado
Mensajes: 83
Antigüedad: 16 años, 8 meses
Puntos: 2
Re: sumar valores de campos de texto para hallar total.

Bueno, pues es solo acomodar eso para el script php, aquí te dejo un ejemplo que solo suma

Explico además que el valor de los productos en mi caso los tengo en la bd y lo que dejo modificar al usuario es la cantidad, y por javascript multiplico el valor del producto por la cantidad

Igualmente, al final aparece un cuadro de Total donde esta la suma de los subtotales de cada producto

Espero os sirva

***********************************

Código:
<script>
function subtotal(price,cant)
{
//Dimensiono name como nuevo arreglo
var name = new Array();
var Total;
//En name guardo un split o recorte del nombre recibido en cant separado por el _
name = cant.split("_");
//Multiplico precio por cantidad
var subtot = price * document.getElementById(cant).value;
//Creo variable con el nombre del subtotal y name[1] que contiene el $row[Nombre]
var subname = 'SubTotal_'+name[1];
//Asigno el valor subtot al cuadro de texto Subtotal del producto correspondiente
document.getElementById(subname).value=subtot;
Total = parseInt(document.getElementById('Total').value) + subtot;
document.getElementById('Total').value = Total;
}
</script>
Código HTML:
<html>
<form name="form">
<table border=1>
<tr>
<td>Id</td>
<td>Nombre</td>
<td>Valor</td>
<td>Cantidad</td>
<td>Subtotal</td>
</tr> 
Código PHP:
<?php
$conn 
mysql_connect("localhost","Foros","Foros");
mysql_select_db("Foros",$conn);
$sql "select * from products";
$query mysql_query($sql,$conn);
while (
$rows mysql_fetch_array($query))
{
echo 
"<tr><td>".$rows['Id']."</td><td>".$rows['Nombre']."</td><td>".$rows['PriceProd']."</td>";
echo 
"<td><input type='text' name='Cantidad_$rows[Nombre]' id='Cantidad_$rows[Nombre]' maxlength='5' onblur=subtotal('$rows[PriceProd]','Cantidad_$rows[Nombre]')></td>";
echo 
"<td><input type='text' name='SubTotal_$rows[Nombre]' id='SubTotal_$rows[Nombre]'></td></tr>";
}
?>
Código HTML:
<tr><td colspan="5" align="center">Total: &nbsp;&nbsp;<input type="text" name="Total" id="Total" value="0"><td></tr>
</table>
</form>
</html> 
***************

Suerte