tengo un form que crea una tabla con una cantidad variable de filas (segun el resultado de mysql)..
la tabla me entrega los campos "Precios Unitarios" - "Cantidad Contratada - "Cantidad Ejecutada" y "Sub_t"
he logrado con un par de funciones, me sume el total de la columna "cantidad ejecutada", PEROO... quiero que tambien me calcule todos los vaores "Sub_t".... pero solo me multiplica SOLO la primera casilla... las siguientes no pasa nada .. ayudenme porfavor ...
esta es toda la pagina.php
Código PHP:
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript">
function sumar(){
var a, total = 0;
var elements = document.getElementsByName('horast[]');
for(a=0; a<elements.length; a++){
total += (parseFloat(elements[a].value));
}
document.getElementById("resultado").value = total * 1;
}
function multiplicar(){
cant_contratadas = document.getElementById("tiempo_cont[]").value;
m1 = document.getElementById("horast[]").value;
m2 = document.getElementById("valor_hono[]").value;
r = m2 * m1 / cant_contratadas;
document.getElementById("resultado_multip[]").value = r;
}
</script>
<form method="post" name="form">
<table width="90%" border="0" cellspacing="5" class="texto_1">
<!--DWLayoutTable-->
<tr>
<td width="28%" height="20" valign="top"><span class="titulo2">Cargos</span></td>
<td> </td>
</tr>
</table>
<table width="90%" border="1" class="texto_1" cellspacing="4" >
<?php
$conexion= mysql_connect("localhost","icaro","icaro")
or die ("no se pudo conectar con el servidorssssssss");
mysql_select_db("administracion",$conexion)or die ("problemas en la conexion a la base de datos");
$nom_tecnico=$_POST['contrato'];
$celda_cargos=mysql_query("select * from cargos where nom_contrato='$nom_tecnico' order by id",$conexion) or die ("cago".mysql_error());
echo "<tr align='center'><td class='style14'>Precios<br>Unitarios</td><td class='style14'>Cantidad<br>Contratada</td><td class='style14'>Cantidad<br>Ejecutada</td><td class='style14'>Sub_t</td></tr>";
for ($i = 0; $i < mysql_num_rows($celda_cargos); ++$i)
{
$columna = mysql_fetch_row($celda_cargos);
$pago=number_format($columna[9],0,",",".");
echo "<tr><td align='center'>$ $columna[9]<input name='valor_hono[]' type='hidden' id='valor_hono[]' value='$columna[9]'/></td><td align='center'>$columna[6]<input name='tiempo_cont[]' type='hidden' id='tiempo_cont[]' value='$columna[6]'/></td><td align='center'><input name='horast[]' type='text' size='4' id='horast[]' onChange='multiplicar()' onkeyup='sumar()' value='0'/></td><td><input type='text' name='resultado_multip[]' id='resultado_multip[]' value='0' size='8' readonly='readonly'/></td></tr>";
}
echo "<tr><td colspan='2' align='right'>Sub total</td><td><input type='text' readonly='readonly' value='0' id='resultado' size='8'/></td><td></td></tr>";
?>
</table>
</form>
</body>
</html>