Ver Mensaje Individual
  #9 (permalink)  
Antiguo 09/01/2009, 05:12
jorget
 
Fecha de Ingreso: enero-2005
Mensajes: 28
Antigüedad: 19 años, 3 meses
Puntos: 0
De acuerdo Respuesta: ¿¿¿Hay limite de campos para los formularios???

Poner todo el código igual es una pasada, ya que es bastante largo, igual es la forma de recogerlo puede ser.

Lo hago mediante un foreach, simplemente para mirar lo que ha llegado hago...

foreach($_POST as $nombre_campo => $valor)
{
echo $nombre_campo." ".$valor."<br>";
}

y creados lógicamente cuando hay más ya no los recibe. Para mandar lo que hago es que en el form de envío añado dinámicamente campos del tipo INPUT con los valores cambiando el nombre del input dependiendo el valor que tome la visita, se llamará VISITA01, VISITA02, VISITA03, como puse más arriba.

El código que añade al formulario dinámicamente los nuevos datos es el siguiente:

while (bEncontrados)
{
bEncontrados=false;
oaInputs = document.getElementsByTagName("input");
for (i=0;i<oaInputs.length;i++)
{
if ((oaInputs[i].type=='hidden') && ((oaInputs[i].id.substring(0,8).toLowerCase()=='proyecto') || (oaInputs[i].id.substring(0,6).toLowerCase()=='visita')) && (oaInputs[i].parentNode.tagName.toLowerCase() != "form"))
{
oCosa = oaInputs[i];
oCosa.parentNode.removeChild(oCosa);
document.getElementById("FSituacionActual").append Child(oCosa);
bEncontrados=true;
}
}
}

El código básicamente lo que hace es recorrer todos los campos de tipo INPUT (que no sean form), comprobando su nombre y si se llaman o proyecto o visita, entonces lo que hace es asignar a oCosa el INPUT en cuestión, lo borra de donde está y lo añade al formulario que se va a enviar. Cuando termina de recorrer todos os campos de tipo INPUT, sale y hago el submit.

En principio siempre me han llegado todos bien y guardado bien, es una funcion que llevo utilizando hace 3 años y hasta ahora no ha fallado nada. Pero claro, conforme ha pasado más tiempo, la gente viene más veces y cuando ha llegado a este número me ha dado este error.


Gracias por todo