Foros del Web » Programando para Internet » PHP »

Hay limite para pasar variables

Estas en el tema de Hay limite para pasar variables en el foro de PHP en Foros del Web. Hola a todos Necesitaria saber si hay un limite de valores de variables para pasar de hoja php a hoja php. Soy un poco nuevo ...
  #1 (permalink)  
Antiguo 02/07/2006, 01:44
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 12 años
Puntos: 15
Hay limite para pasar variables

Hola a todos

Necesitaria saber si hay un limite de valores de variables para pasar de hoja php a hoja php.

Soy un poco nuevo con el tema php.
El tema es que tengo una pagina que cuando se abre reciben valores de variables de la pagina anterior. SON 240 VARIABLES
Pero el explorador no la carga. Y me da este mensaje.


Safari can’t open the page “http:/www.mipagina.com/HereYourEstimateESTEF.p…t22=&EstDivCharact23=&EstD ivCharact24=&EstDivCharact25=” because the network connection was reset, which sometimes occurs when the server is busy. You might be able to open the page later.


He probado por 3 dias seguidos y siempre el mismo mensaje. Así que: "later" no es la solucion

El servidor funciona bien con php porque tengo otras paginas php y van bien.

ES POSIBLE QUE SEA PORQUE SON MUCHAS VARIABLES (240) LAS QUE ESTOY PASANDO ENTRE PAGINA Y PAGINA. (es que no se ocurre otra cosa y otras paginas php que reciben menos variables fucionan bien)

saludos
gracias
  #2 (permalink)  
Antiguo 02/07/2006, 03:17
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 12 años
Puntos: 15
He estado haciendo prueba y el problema es la cantidad de valores de este tipo:
<input name="EstDivAncho22" id="EstDivAncho22"type="hidden" value="0">

que tengo dentro del formulario. (unos 240)

Alguna idea de como podria solucionarlo.
O no hay otra solucion que reducir el numero de variables enviadas

gracias
saludos
  #3 (permalink)  
Antiguo 02/07/2006, 04:02
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 12 años
Puntos: 15
Es posible hacer esto de otra forma:

Este es mi form que envia variables. Yo lo tengo de esta forma pero seguro que hay una forma mejor de hacerlo. (UNA FORMA que pueda hacer que sean menos inputs)

<form id="formularioEnvio" action="HereYourEstimate.php" method="get">

<input name="EstDivAncho1" id="EstDivAncho1" type="hidden" value="0">
<input name="EstDivAncho2" id="EstDivAncho2"type="hidden" value="0">
<input name="EstDivAncho3" id="EstDivAncho3"type="hidden" value="0">
<input name="EstDivAncho4" id="EstDivAncho4"type="hidden" value="0">
<input name="EstDivAncho5" id="EstDivAncho5" type="hidden" value="0">
<input name="EstDivAncho6" id="EstDivAncho6"type="hidden" value="0">
<input name="EstDivAncho7" id="EstDivAncho7"type="hidden" value="0">
<input name="EstDivAncho8" id="EstDivAncho8"type="hidden" value="0">
<input name="EstDivAncho9" id="EstDivAncho9"type="hidden" value="0">
<input name="EstDivAncho10" id="EstDivAncho10"type="hidden" value="0">
<input name="EstDivAncho11" id="EstDivAncho11"type="hidden" value="0">
<input name="EstDivAncho12" id="EstDivAncho12"type="hidden" value="0">
<input name="EstDivAncho13" id="EstDivAncho13"type="hidden" value="0">
<input name="EstDivAncho14" id="EstDivAncho14"type="hidden" value="0">
<input name="EstDivAncho15" id="EstDivAncho15"type="hidden" value="0">
<input name="EstDivAncho16" id="EstDivAncho16"type="hidden" value="0">
<input name="EstDivAncho17" id="EstDivAncho17"type="hidden" value="0">
<input name="EstDivAncho18" id="EstDivAncho18"type="hidden" value="0">
<input name="EstDivAncho19" id="EstDivAncho19"type="hidden" value="0">
<input name="EstDivAncho20" id="EstDivAncho20"type="hidden" value="0">
<input name="EstDivAncho21" id="EstDivAncho21"type="hidden" value="0">
<input name="EstDivAncho22" id="EstDivAncho22"type="hidden" value="0">
<input name="EstDivAncho23" id="EstDivAncho23"type="hidden" value="0">
<input name="EstDivAncho24" id="EstDivAncho24"type="hidden" value="0">
<input name="EstDivAncho25" id="EstDivAncho25"type="hidden" value="0">

<input name="EstDivAlto1" id="EstDivAlto1" type="hidden" value="0">
<input name="EstDivAlto2" id="EstDivAlto2"type="hidden" value="0">
<input name="EstDivAlto3" id="EstDivAlto3"type="hidden" value="0">
<input name="EstDivAlto4" id="EstDivAlto4"type="hidden" value="0">
<input name="EstDivAlto5" id="EstDivAlto5" type="hidden" value="0">
<input name="EstDivAlto6" id="EstDivAlto6"type="hidden" value="0">
<input name="EstDivAlto7" id="EstDivAlto7"type="hidden" value="0">
<input name="EstDivAlto8" id="EstDivAlto8"type="hidden" value="0">
<input name="EstDivAlto9" id="EstDivAlto9"type="hidden" value="0">
<input name="EstDivAlto10" id="EstDivAlto10"type="hidden" value="0">
<input name="EstDivAlto11" id="EstDivAlto11"type="hidden" value="0">
<input name="EstDivAlto12" id="EstDivAlto12"type="hidden" value="0">
<input name="EstDivAlto13" id="EstDivAlto13"type="hidden" value="0">
<input name="EstDivAlto14" id="EstDivAlto14"type="hidden" value="0">
<input name="EstDivAlto15" id="EstDivAlto15"type="hidden" value="0">
<input name="EstDivAlto16" id="EstDivAlto16"type="hidden" value="0">
<input name="EstDivAlto17" id="EstDivAlto17"type="hidden" value="0">
<input name="EstDivAlto18" id="EstDivAlto18"type="hidden" value="0">
<input name="EstDivAlto19" id="EstDivAlto19"type="hidden" value="0">
<input name="EstDivAlto20" id="EstDivAlto20"type="hidden" value="0">
<input name="EstDivAlto21" id="EstDivAlto21"type="hidden" value="0">
<input name="EstDivAlto22" id="EstDivAlto22"type="hidden" value="0">
<input name="EstDivAlto23" id="EstDivAlto23"type="hidden" value="0">
<input name="EstDivAlto24" id="EstDivAlto24"type="hidden" value="0">
<input name="EstDivAlto25" id="EstDivAlto25"type="hidden" value="0">

</form>

O sea alguna funcion que haga que sean menos <input.......>

gracias
saludos
  #4 (permalink)  
Antiguo 02/07/2006, 08:27
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 14 años
Puntos: 88
Código PHP:
// Genramos la cantidad de inputs...
for($i 1$i <= 25$i++)
{
echo 
"<input name=\"EstDivAncho[]\" id=\"EstDivAncho[]\" type=\"hidden\" value=\"0\">";
}

// Para recibir esos datos de arriba...

foreach($_POSt['EstDivAncho'] as $divAncho)
{
echo 
$divAncho."<br>";
}

// Para el alto lo mismo que arriba
for($i 1$i <= 25$i++)
{
echo 
"<input name=\"EstDivAlto[]\" id=\"EstDivAlto[]\" type=\"hidden\" value=\"0\">";
}

// Y los recibimos...
foreach($_POST['EstDivAlto'] as $divAlto)
{
echo 
$divAlto."<br>";

Prueba si te sirve eso :P
  #5 (permalink)  
Antiguo 02/07/2006, 08:37
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 12 años
Puntos: 15
gracias spyder ya lo estoy probando.
De todas formas. Habia probado cambiando el metodo de GET a POST y me habia funcionado. Como si el metodo post funcionara mejor con grandes cantidades de variables...
Tu que opinas, lo dejo asi o pruebo el codigo que me pasas....

saludos
  #6 (permalink)  
Antiguo 02/07/2006, 09:01
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 14 años
Puntos: 88
:|...

Yo hice el código pensando que estaba en POST...

Si... en estos casos es mejor post...
  #7 (permalink)  
Antiguo 02/07/2006, 20:06
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 11 años, 11 meses
Puntos: 5
Buenas, el método GET tiene un límite de caracteres mucho más bajo que POST (no recuerdo exactemente cuántos, pero creo que era algo así como 256; aunque no estoy seguro, sí es mucho menos que lo que te permite POST). El límite de POST es configurable (aunque también tiene un límite), pero en la configuración por defecto de mi servidor (apache 1.3), por ejemplo, es de 8 Mb.

En síntesis, si realmente tenés que pasar 240 variables, usá POST (no sé qué es lo que estás intentando hacer pero se me ocurre que seguro debe haber una forma más eficaz, tal vez usando arrays, tal vez enfocando el problema de otra manera, etc).

Suerte
Califa
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 03:37.