Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/07/2015, 13:46
Avatar de chronos682
chronos682
 
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: Problema con for each

Traté de simular tu código poniendo 340 checkbox y lo único que tuve que cambiar fue el órden de los parámetros en la función mysql_query, pero de resto todo funciona bien. Aquí te dejo el código que usé y funciona bien:

Código PHP:
Ver original
  1. <?php
  2.     $mysqli = new mysqli("localhost", "root", "", "prueba");
  3. ?>
  4. <?php
  5.     if (isset($_POST['enviar']))
  6.     {
  7.         foreach($_POST['chkocultar'] as $codigo)
  8.         {
  9.             echo $codigo."<br>";
  10.             $result = mysqli_query($mysqli, "UPDATE prueba SET kpasivo=1 WHERE codigo='{$codigo}'");
  11.         }
  12.         exit;
  13.     }
  14. ?>
  15. <html>
  16. <head></head>
  17. <body>
  18. <form action="" method="post">
  19. <?php
  20.     for ($i=1;$i<=340;$i++)
  21.     {
  22.         echo "<input type='checkbox' name='chkocultar[]' value='{$i}'>{$i}<br>";
  23.     }
  24. ?>
  25. <input type="submit" name = "enviar" value="Enviar">
  26. </form>
  27. </body>
  28. </html>

Como ves, no hay problema con el número de checkbox.

Corrijo el código. Ya la costumbre de usar mysqli. Así es como debe quedar. Y no hay que cambiar el órden en mysql_query:

Código PHP:
Ver original
  1. <?php
  2.     $mysql = mysql_connect("localhost", "root", "");
  3.     mysql_select_db("prueba", $mysql) or die(mysql_error());
  4. ?>
  5. <?php
  6.     if (isset($_POST['enviar']))
  7.     {
  8.         foreach($_POST['chkocultar'] as $codigo)
  9.         {
  10.             echo $codigo."<br>";
  11.             $result = mysql_query("UPDATE prueba SET kpasivo=1 WHERE codigo='{$codigo}'",$mysql);
  12.         }
  13.         exit;
  14.     }
  15. ?>
  16. <html>
  17. <head></head>
  18. <body>
  19. <form action="" method="post">
  20. <?php
  21.     for ($i=1;$i<=340;$i++)
  22.     {
  23.         echo "<input type='checkbox' name='chkocultar[]' value='{$i}'>{$i}<br>";
  24.     }
  25. ?>
  26. <input type="submit" name = "enviar" value="Enviar">
  27. </form>
  28. </body>
  29. </html>
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]

Última edición por chronos682; 31/07/2015 a las 13:52