Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: :ohk<any> en 21 Agosto 2013, 01:19 am



Título: Problema con los inputs y los arrays
Publicado por: :ohk<any> en 21 Agosto 2013, 01:19 am
Buenas foro,

Estoy teniendo un problema con unos inputs que no me están devolviendo la información que requiero, sino que me esta cortando la información a cuando llega a los 38 o 39 datos, para explicarme mejor pongo el ejemplo:

Tengo un html/php que me genera inputs repetidamente las veces necesarias declaradas en una variable.

Código
  1. <?php
  2. $tope = 60;
  3. $is = 1;
  4.  
  5. while($is <= $tope){
  6. ?>
  7.  <input type="text" size="6" name="peso[<?php echo $is; ?>]" id="peso[<?php echo $is; ?>]" value="0"/>
  8. <?php
  9. $is ++;
  10. }
  11.  

Que como veran en el código me genera un input 60 veces y que lleva de nombre peso[1], hasta peso[60].
A cada input se le pone una información (en números) y se presiona el botón de submit.

Y al recibir los valores me pasa esto:

Código
  1. [peso] => Array
  2.        (
  3.            [1] => 0
  4.            [2] => 0
  5.            [3] => 0
  6.            [4] => 0
  7.            [5] => 0
  8.            [6] => 0
  9.            [7] => 0
  10.            [8] => 0
  11.            [9] => 0
  12.            [10] => 0
  13.            [11] => 0
  14.            [12] => 0
  15.            [13] => 0
  16.            [14] => 0
  17.            [15] => 0
  18.            [16] => 0
  19.            [17] => 0
  20.            [18] => 0
  21.            [19] => 0
  22.            [20] => 0
  23.            [21] => 0
  24.            [22] => 0
  25.            [23] => 0
  26.            [24] => 0
  27.            [25] => 0
  28.            [26] => 0
  29.            [27] => 0
  30.            [28] => 0
  31.            [29] => 0
  32.            [30] => 0
  33.            [31] => 0
  34.            [32] => 0
  35.            [33] => 0
  36.            [34] => 0
  37.            [35] => 0
  38.            [36] => 0
  39.            [37] => 0
  40.            [38] => 0
  41.        )
  42.  

No puedo recibir el valor del peso del 39 en adelante y hasta el 60.
Alguien sabe porque me esta pasando esto?

O es algo de teoría básica de PHP que desconozco y nunca podré hacer inputs válidos mayores a 38 datos, o que es lo que esta pasando...

Espero me puedan ayudar.

Saludos


Título: Re: Problema con los inputs y los arrays
Publicado por: #!drvy en 21 Agosto 2013, 03:05 am
Código
  1. Array ( [peso] => Array ( [1] => 0 [2] => 0 [3] => 0 [4] => 0 [5] => 0
  2. [6] => 0 [7] => 0 [8] => 0 [9] => 0 [10] => 0 [11] => 0 [12] => 0 [13] => 0 [14]
  3. => 0 [15] => 0 [16] => 0 [17] => 0 [18] => 0 [19] => 0 [20] => 0 [21] => 0 [22]
  4. => 0 [23] => 0 [24] => 0 [25] => 0 [26] => 0 [27] => 0 [28] => 0 [29] => 0 [30]
  5. => 0 [31] => 0 [32] => 0 [33] => 0 [34] => 0 [35] => 0 [36] => 0 [37] => 0 [38]
  6. => 0 [39] => 0 [40] => 0 [41] => 0 [42] => 0 [43] => 0 [44] => 0 [45] => 0 [46]
  7. => 0 [47] => 0 [48] => 0 [49] => 0 [50] => 0 [51] => 0 [52] => 0 [53] => 0 [54]
  8. => 0 [55] => 0 [56] => 0 [57] => 0 [58] => 0 [59] => 0 [60] => 0 ) )

Es lo que me retorna de probar exactamente lo que has hecho. Me da a mi que 1 de 3, o tienes algún error en el html, o tienes algun error en el proceso del $_post o alguna configuración super extraña del php xD

Pero no es ninguna cosa básica de PHP.. según se no tiene limite de tamaño mas que el del post_max_size.



He estado investigando por google y parece ser que algunos "modulos" de seguridad limitan el tamaño de las variables en POST. Aquí un usuario se ha topado con tu problema y dice que tuvo que modificar el php.ini para incrementar el limite.

http://forums.phpfreaks.com/topic/138796-solved-post-array-size-limit-but-not-mb/?p=728200

Saludos


Título: Re: Problema con los inputs y los arrays
Publicado por: :ohk<any> en 21 Agosto 2013, 03:23 am
Vaya problema, el primer paso para solucionar un problema es conocerlo y aquí estoy perdido, nose cual es el problema.  >:(


Título: Re: Problema con los inputs y los arrays
Publicado por: :ohk<any> en 21 Agosto 2013, 03:54 am
Haber, según tus tres puntos posibles:

  • El html no tienen ningún tipo de error de sintaxis ni nada parecido, esta bien generado.
  • El $_POST procesa otra información enviada, cualquier otro valor y lo que sea de la misma forma lo procesa correctamente. Además para mostrar los valores enviados previamente hago un echo asi: print_r($_POST) de tal forma que no hay donde me haya equivocado, y para constatar recibo la variable y hago un foreach que me regresa lo mismo.
  • Algun error raro del PHP, no lo descarto por mas raro que suene, pero estoy con Linux Ubuntu, todo normal, mi PHP es PHP Version 5.4.6-1ubuntu1.3, Core 5.4.6-1ubuntu1.3,  Apache/2.2.22 (Ubuntu), aunque no he intentado hacer correr en Windows porque no tengo windows.
  • Y finalmente mi post_max_size esta en 8M.

Entonces sigo sin saber que pasa :(

Tu bajo que sistema operativo probaste el ejemplo y bajo que version del php. ¿?

Saludos


Título: Re: Problema con los inputs y los arrays
Publicado por: :ohk<any> en 21 Agosto 2013, 13:27 pm
Esto no tienen ningún sentido, por probar cambié el post_max_size a 32M y me cargo los 60.
Luego lo devolví a los 8M y sigue cargando los 60.

Ya estoy perdido, oficialmente nose nada de php  :xD  :xD  :xD

Bueno, solucionado "creo"  :¬¬