Ver Mensaje Individual
  #9 (permalink)  
Antiguo 28/03/2012, 10:18
Avatar de el_cesar
el_cesar
 
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 23 años
Puntos: 20
Respuesta: Consultar datos de un array

Bueno a ver te cuento claramente que es lo que estoy haciendo, por un lado tengo un formulario que construyo desde una base de datos asi

Código PHP:
Ver original
  1. //construimos la Tabla para presentar los datos
  2.  
  3. echo "<table>";
  4. echo "<tr><td colspan='2'><div style='background-color: #ff6600; text-align: center;'>M&oacute;dulos a contratar</div></td></td>";
  5. echo "<tr><td>M&oacute;dulo</td>";
  6. echo "<td>Cantidad</td>";
  7. echo "<td>Contratar</td></tr>";
  8.  
  9. while ($row = mysql_fetch_array ($runsql)) {
  10.  
  11.    
  12.     echo "<tr><td>$row[1]</td>";
  13.     echo "<td><input type='text' name='cantidad[]' size='4' maxlength='3' value='1' ></td>";
  14.     echo "<td><input type='checkbox' name='modulo[]' value='$row[0]'></td></tr>";
  15. }
  16.  
  17. echo "</table>";

Y del otro lado, recibo los array para armar un documento en pdf, todo esta funcionando bien, pero lo que necesito es que en la tabla que formo me aparezca el modulo que seleccionó, el valor y la cantidad seleccionada.

por ejemplo

FORM
Módulo cantidad
Módulo 1 12 [x]
Módulo 2 [ ]
Modulo 3 4 [x]

TABLA DE PRESENTACION
Módulo Cantidad Valor
Modulo 1 12 $5.000
Módulo 3 4 $6.000

el tema del calculo del valor lo tengo solucionado, el lio que tengo es que no he logrado mostrar las cantidades en la tabla como corresponde, ayer logré mostrar los valores con este código:

Código PHP:
Ver original
  1. $tablahtml='';
  2. $tablahtml.="<table >";
  3. $tablahtml.="<tr ><td><div style='align:center; background-color:#FF8000; color: #fffff; font-weight: bold;'>M&oacute;dulo</div></td>";
  4. $tablahtml.="<td><div style='align:center; background-color:#FF8000; color: #fffff; font-weight: bold;'>Cantidad</div></td>";
  5. $tablahtml.="<td><div style='align:center; background-color:#FF8000; color: #fffff; font-weight: bold;'>Valor</div></td></tr>";
  6.  
  7. while ($row = mysql_fetch_array($rsql)) {
  8.  
  9.  
  10.  
  11. $tablahtml.="<tr><td>$row[1]</td>";
  12. $valor = $row[2] * $vr_hora;
  13.  
  14. //armamos el array para el total de horas
  15. $horasd[] = $row[2];
  16. $totalhoras = array_sum($horasd);
  17.  
  18. //convertimos valor a miles
  19. $tablahtml.="<tr><td>$row[1]</td>";
  20. $valor1_mil=number_format($valor,0,'.',',');
  21.  
  22. //Armamos el array para sumar el valor total
  23. $sant = implode('<td></td>',$cant);
  24. $precio[] = $row[2] * $vr_hora;
  25.  
  26.  
  27. //Recibimos variables para cantidades
  28.  
  29. $modul = count($_POST['modulo']) ? $_POST['modulo'] : array();
  30.  
  31.       for($i=0;$i<count($modul);$i++)
  32.  
  33. $vector = count($_POST['cantidad']) ? $_POST['cantidad'] : array();
  34.       for($i=0;$i<count($vector);$i++)
  35.     if(empty($modul[$i])){  }
  36. else {    
  37.  
  38. $tablahtml.="<td>$vector[$i] </td>";
  39.  
  40. }
  41. echo "";
  42. $tablahtml.="<td><div align='right'>$valor1_mil</div></td></tr>";
  43. ....

de esta forma me muestra los valores así

Módulo Cantidad Valor
Módulo 1 12 4 $5.000
Módulo 2 12 4 $5.000

y lo que yo necesito es


Módulo Cantidad Valor
Módulo 1 12 $5.000
Módulo 2 4 $4.000

y lo probpe asi
Código PHP:
Ver original
  1. $valor = $row[2] * $vr_hora;
  2.  
  3. //armamos el array para el total de horas
  4. $horasd[] = $row[2];
  5. $totalhoras = array_sum($horasd);
  6.  
  7. //convertimos valor a miles
  8.  
  9. $valor1_mil=number_format($valor,0,'.',',');
  10. //Armamos el array para sumar el valor total
  11. $sant = implode('<td></td>',$cant);
  12. $precio[] = $row[2] * $vr_hora;
  13. //Recibimos variables para cantidades
  14.  
  15. $modul = count($_POST['modulo']) ? $_POST['modulo'] : array();
  16.  
  17.       for($i=0;$i<count($modul);$i++)
  18.  
  19. $vector = count($_POST['cantidad']) ? $_POST['cantidad'] : array();
  20.       for($i=0;$i<count($vector);$i++)
  21.     if(empty($modul[$i])){  }
  22. else {    
  23. $tablahtml.="<tr><td>$row[1]</td>";
  24. $tablahtml.="<td>$vector[$i] </td>";
  25. $tablahtml.="<td><div align='right'>$valor1_mil</div></td></tr>";
  26. }
  27. echo "";
y me los muestra asi

Módulo Cantidad Valor
Modulo 1 12 $5.000
4
Modulo 3 12 $5.000
4
__________________
Say no more.......