Ver Mensaje Individual
  #4 (permalink)  
Antiguo 16/04/2009, 08:26
Avatar de OsSk4R
OsSk4R
 
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 18 años, 1 mes
Puntos: 74
Respuesta: Inconveniente con Foreach

Buenas de nuevo, gracias por contestar.

He hecho lo que se me ha dicho pero no logro hacer que funcione del todo.
Viendo que no me funciona, he evitado hacer el insert a la BD, para asi ahorrare el tyrabajo de estar borrando cada dos por tres...

Bueno, comento. Resulta que ahora si selecciono el primer checkbox (servidor) se me abre un input, lo relleno, luego selecciono el segundo servidor, se me abre otro input, lo vuelvo a rellenar y le doy a enviar y luego en la pagina que se muestran los datos, me aparecen correctamente.
Ejemplo, una imagen:



El problema esta en que si hago todo eso, como he dicho arriba, pero en vez de seleccionar el segundo, seleciono el tercero. O sea, selecciono el primero y el tercero, a la hora de mostrar los datos, los datos del tercero no me los muesta.

Me muestra los del pimero, la id del servidor y el enlace que he escrito en el input y del tercero solo me muestra la id del servidor, pero el enlace, lo que he escrito en el input no se me muestra
Ejemplo, otra imagen:


Que pasa, porque cuando selcciono el pimero y segundo se me muestra todo correctamente, en cambio si selcciono el primero y tercero o el tercero nada más, este ultimo a la hora de mostrar no se me muestra.

Mirar, aqui esta el codigo:

Formulario:
Código 1:
Ver original
  1. <STYLE>
  2. .hideable { position: relative; visibility: visible; }
  3. </STYLE>
  4. <script type="text/javascript">
  5. <!--
  6. function showMe (it, box) {
  7. var vis = (box.checked) ? "block" : "none";
  8. document.getElementById(it).style.display = vis;
  9. }
  10. //-->
  11. </script>
  12. </head>
  13. <body>
  14. <TABLE>
  15. <TR>
  16. <TD VALIGN="top">
  17. <form name='formulario' method='post' action='2.php'>
  18. <?php
  19.        
  20.  
  21.                         $sql = "SELECT * FROM servidores ORDER BY id";
  22.                         $res = do_sql ($sql);
  23.                         $i=0;
  24.                
  25.                         while ($row = mysql_fetch_array($res)) {
  26.                         $i++;
  27.                         $ide = $row['nom_serv'];
  28.             $imagenserv = $row['imagen_serv'];
  29.                 ?>
  30.  
  31. <input type="checkbox" name="id_servidor[]"  onclick="showMe('div1<?php echo $i ?>', this)" value="<?php echo $row['id_servidor']?>"><?php echo $ide; ?><br />
  32.  
  33.  
  34.              
  35. </td><td>
  36. <div id="div1<?php echo $i ?>" style="display:none">
  37. <SPAN ID="contenido" CLASS="hideable">
  38. Enlace:<INPUT TYPE="text" NAME="enlace[]" SIZE="15" MAXLENGTH="100">
  39. </td>
  40. </SPAN>
  41. </div>
  42. </TD>
  43. </TR>
  44. </TABLE>
  45.   <?php
  46.                         }
  47.                 ?>
  48. <input type='submit' name='Submit' value='Enviar'>
  49. </FORM>

Caprutamos los datos:
Código 2:
Ver original
  1. <p>DATOS INTRODUCIDOS</p>
  2. <?php
  3.  
  4.  
  5.  
  6. $id_servidor=$_POST['id_servidor'];
  7. $enlaces=$_POST['enlace'];                                      
  8. foreach ($id_servidor as $indice => $valor) {
  9. echo "{$id_servidor[$indice]} : {$enlaces[$indice]}<br />";
  10.  
  11. }
  12. ?>


Saludos y muchas gracias de nuevo,