Foros del Web » Programando para Internet » PHP »

recorrer un array asociativo de 3 componentes

Estas en el tema de recorrer un array asociativo de 3 componentes en el foro de PHP en Foros del Web. Hola a todos, mi pagina genera dinamicamente un array asociativo con 2 componentes uno se llama "programa" y el otro "monto" que se graban en ...
  #1 (permalink)  
Antiguo 25/10/2012, 06:50
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
recorrer un array asociativo de 3 componentes

Hola a todos, mi pagina genera dinamicamente un array asociativo con 2 componentes uno se llama "programa" y el otro "monto" que se graban en la bd hasta ahi todo bien, yo quiero que se concatene los input "caract","num","anio" (q es el expediente) y se envie a la bd en ese mismo array asociativo y no me sale(guarda vacio!!). La estructura de la tabla "preliminar" es: programa, monto, expediente. Tambien intente ponerle un
Código:
<form action="pasajes.preliminar.carga.php" action="post">
al div del expediente, pero evidentemente no se puede poner 2 form en la misma pagina que procesa el formulario. bueno aca esta el codigo. Gracias!!
Código PHP:
Ver original
  1. <div align="center">
  2.  
  3. Expediente
  4.  
  5. <input class="col_1" value="" name="caract" type="text">
  6.  
  7. -<input class="col_1"  value="" name="num" type="text">
  8.  
  9. / <input class="col_1"  value="" name="anio" type="text">
  10.  
  11. -<input class="col_1" value="" name="alc" type="text">
  12.  
  13. </div>
  14.  
  15.  
  16.  
  17. <hr class="alt1">
  18.  
  19.  
  20.  
  21. <div style="text-align: center;">
  22.  
  23. <table id="tablaUsuarios" border="2" name="tablaprog" >
  24.  
  25. <tbody><tr style="text-align: center;" id="fila">
  26.  
  27.     <td style="width: 268px; text-align: center;">Programa</td>
  28.  
  29.     <td style="width: 331px; text-align: center;">Monto</td>
  30.  
  31.     <td style="width: 338px; text-align: center;">Acciones</td>
  32.  
  33. </tr>
  34.  
  35. <tr>
  36.  
  37.     <td style="width: 268px; text-align: left;">    <!--aca va el select inteligente-->
  38.  
  39.     <select class="fancy" name="programa" id="sel">
  40.  
  41. <?php
  42.  
  43. include_once('cone.php');
  44.  
  45. Conectate();
  46.  
  47. $cons=mysql_query("select idprograma,programa from programa");
  48.  
  49. while($r=mysql_fetch_array($cons))
  50.  
  51. {
  52.  
  53.   echo "<option class='fancy' value='$r[programa]'>$r[idprograma] | $r[programa]</option>";  
  54.  
  55. }
  56.  
  57. ?>
  58.  
  59.     </select></td>
  60.  
  61.     <td style="width: 331px; text-align: center;"><input id="text1" name="montos" type="text"></td>
  62.  
  63.     <td style="width: 338px;">
  64.  
  65.         <input class="small orange" onclick="calcula()" value="Calcula" type="button">  
  66.  
  67.             <input class="small pink" onclick="Ordenoo()" value="Graba" type="button">
  68.  
  69.         <a class="button pop" href="#ABAJO">Abajo</a>
  70.  
  71.     </td>
  72.  
  73. </tr>
  74.  
  75. </tbody></table>
  76.  
  77. </div>
  78.  
  79. <!--</form>-->
  80.  
  81.  
  82.  
  83. <!-- HR.alt2 -->
  84.  
  85. <hr class="alt2">
  86.  
  87. <!-- /HR.alt2 -->
  88.  
  89.  
  90.  
  91. <!-- Tabla para mostrar monto de la preliminar -->
  92.  
  93. <table>
  94.  
  95. <tbody><tr>
  96.  
  97.     <td style="width: 388px; text-align: right;"><span style="font-weight: bold;">MONTO TOTAL</span><br> </td>
  98.  
  99.     <td style="width: 155px; text-align: center; font-weight: bold;" id="aca"><br></td>
  100.  
  101.     <th style="width: 390px;">MONTO TOTAL<br></th>
  102.  
  103.        </tr>
  104.  
  105. </tbody>
  106.  
  107. </table>
  108.  
  109. <!-- /Tabla para mostrar monto de la preliminar -->
  110.  
  111.  
  112.  
  113.  
  114.  
  115. <!-- HR.alt1 -->
  116.  
  117. <hr class="alt1">
  118.  
  119.  
  120.  
  121.  
  122.  
  123.   <!-- Pestañas con distribucion y mas opciones -->
  124.  
  125. <ul class="tabs center">
  126.  
  127. <li><a href="#tabc1">Resultado de la distribucion</a></li>
  128.  
  129. </ul>
  130.  
  131.  
  132.  
  133. <div id="tabc1" class="tab-content">
  134.  
  135.  <form action="pasajes.preliminar.carga.php" method="post" id="orden" name="uno">  
  136.  
  137.    <table class="sortable" id="distribucion">
  138.  
  139.      <thead>
  140.  
  141.         <tr><th>PROGRAMA</th> <th>MONTO</th><th>ACCIONES</th></tr>
  142.  
  143.      </thead>
  144.  
  145.     <tbody>
  146.  
  147.       <!--  <tr id="linea"><td id="destino"></td><td id="plata"></td><td></td></tr>
  148.  
  149.         <tr><td>Joshua</td> <td>4325.63</td>    <td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>
  150.  
  151.         <tr><td>Peter</td><td>5698.44</td>  <td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>
  152.  
  153.         <tr><td>Mary</td><td>7654.82</td><td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>
  154.  
  155.         <tr><td>Gretty</td><td>6732.85</td><td><a href=""><span class="icon large pink" data-icon="T"></span></a></td></tr>-->
  156.  
  157.      </tbody>
  158.  
  159.        </table>
  160.  
  161.    
  162. </form>
  163. </div>
  164.  
  165.  
  166.  
  167. </div>
  168.  
  169.  
  170.  
  171. <!-- END WRAP -->
  172.  
  173. <?php
  174.  
  175.  $link=mysql_connect("localhost","charly163","charly") or die("no se conecto");
  176.  
  177.  mysql_select_db("prueba",$link) or die("No encontro la base");
  178.  
  179.  if (isset($_POST['caract']))
  180.  {
  181.  $a = $_POST['caract'];
  182.  }
  183.   else
  184.  {
  185.  $a = "";
  186.   }
  187. //$a=$_POST["caract"];
  188.  
  189. if (isset($_POST['num']))
  190.  {
  191.  $b = $_POST['num'];
  192.  }
  193.   else
  194.  {
  195.  $b = "";
  196.   }
  197.  
  198. //$b=$_POST["num"];
  199.  
  200. if (isset($_POST['num']))
  201.  {
  202.  $c = $_POST['num'];
  203.  }
  204.   else
  205.  {
  206.  $c = "";
  207.   }
  208. //$c=$_POST["anio"];
  209. $d=$a.$b.$c;
  210. mysql_query("INSERT INTO preliminar(expediente) VALUES('$d');") or die(mysql_error());
  211.  
  212. foreach ($_POST as $clave => $valor)
  213.  
  214.  {
  215.  
  216.  mysql_query("INSERT INTO preliminar(programa, monto) VALUES('$clave','$valor');") or die(mysql_error());
  217.  
  218.  }
  219.  
  220.  
  221.  ?>
  #2 (permalink)  
Antiguo 25/10/2012, 06:54
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: recorrer un array asociativo de 3 componentes

usa corchetes en los nombres:

Código HTML:
Ver original
  1. <input class="col_1" value="" name="caract[]" type="text">
  2. -<input class="col_1"  value="" name="num[]" type="text">
  3. / <input class="col_1"  value="" name="anio[]" type="text">
  4. -<input class="col_1" value="" name="alc[]" type="text">

llegarán como arrays en $_POST, con 1 solo formulario

si necesitas el id en Javascript no te recomiendo usar corchetes en el ID, concatena el numero directamente:

<input class="col_1" value="" name="caract[<?=$key?>]" id="caract<?=$key?>" type="text">
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 25/10/2012, 07:42
 
Fecha de Ingreso: septiembre-2005
Mensajes: 80
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: recorrer un array asociativo de 3 componentes

Gracias maycolalvarez x la pronta respues, muchjo no entendi tu solucion, puse los corchetes en el nombre y nada, al contrario ahora el boton "calcula" que es el q genera dinamicamente no anda, no hace nada. El tema es que no se como recibir los valores ingresados en el input porque ya tengo un formulario que solo manda los datos de la tabla, pero no los del expediente, si hago otro formulario en el expediente tambien que lo procese la misma pagina, no funciona, y si hago un unico formulario desde donde empiezan los input hasta el final del codigo (incluyendo todo) tampoco funciona. entonces me graba solo el programa y el monto y el expediente lo graba en otro registro pero todo vacio!!

Etiquetas: asociativo, componentes, formulario, mysql, sql, tabla, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:08.