Foros del Web » Programando para Internet » PHP »

CodeIgniter Error de Memoria pero solo usando IE

Estas en el tema de Error de Memoria pero solo usando IE en el foro de PHP en Foros del Web. Muy buenas. Molesto por lo siguiente que me tiene un poco mareado a estas alturas: estoy 'reescribiendo' un pequeño sistema antiguo en PHP a CodeIgniter ...
  #1 (permalink)  
Antiguo 24/02/2012, 10:31
Avatar de Hayi  
Fecha de Ingreso: febrero-2002
Ubicación: Santa Fe - Santa Fe
Mensajes: 121
Antigüedad: 22 años, 2 meses
Puntos: 3
Pregunta Error de Memoria pero solo usando IE

Muy buenas. Molesto por lo siguiente que me tiene un poco mareado a estas alturas: estoy 'reescribiendo' un pequeño sistema antiguo en PHP a CodeIgniter y me encuentro con el error "Fatal error: Allowed memory size of X bytes exhausted (tried to allocate X bytes) in..." cuando realizo una petición de datos vía AJAX. No es nada del otro mundo pero siempre se presenta en un mismo bucle que, como máximo, se repite 12 veces (es un cálculo de pago de cuotas con intereses según la cantidad de cuotas elegidas).

He leído mucho y las soluciones que brindan son las de aumentar el límite de memoria, ya sea a través del php.ini, .htaccess, set_init(), etc... Nada funciona. De por si, tengo definido en mi php.ini un límite de 256MB y aumentarlo no me sirvió para nada.

¿Pero que es lo más 'extraño'? El error solo aparece cuando utilizo Internet Explorer. Si lo pruebo en otro navegador, no produce error alguno.

Algo para destacar es la forma de realizar la llamada: cuando no usaba CI, utilizaba un constructor AJAX:

Cita:
function objetoAjax()
{
var xmlhttp=false;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E)
{
xmlhttp = false;
}
}

if (!xmlhttp && typeof XMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
Y ahora utilizo una función jQuery pero no sé si eso realmente podría ser el problema.


Desde ya muchas gracias y saludos.
  #2 (permalink)  
Antiguo 24/02/2012, 11:54
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Error de Memoria pero solo usando IE

Si el problema es con IE, debe ser cosa del javascript, no de php, y desde luego aumentar la memoria no te va a ayudar. Para depurar, antes de entrar al bucle imprime en algún lugar todos los datos que recibiste en la petición, que seguramente no serán correctos.
  #3 (permalink)  
Antiguo 29/02/2012, 06:35
Avatar de Hayi  
Fecha de Ingreso: febrero-2002
Ubicación: Santa Fe - Santa Fe
Mensajes: 121
Antigüedad: 22 años, 2 meses
Puntos: 3
De acuerdo Respuesta: Error de Memoria pero solo usando IE

Hola ocp001a. Efectivamente, el error aparecía en el script. Al realizar una impresión de los datos con los que trabaja, el problema se presentaba en la forma en que IE procesaba unos de los datos (el que recibía del SELECT): lo tomaba como un arreglo.

Es decir, cuando por ejemplo, el valor de la opción del SELECT era 5, tanto Chrome como FF tomaban la variable que definía con ese valor pero IE me tomaba el arreglo completo (siguiendo el ejemplo, 1-2-3-4-5). La forma de solucionarlo fue simplemente agregando una línea más de código donde realizo una división.

De todas maneras, me resulta un poco extraño el error, ya que simplemente trasladé lo que antes tenía hecho 'traducido' para CI usando jQuery en la llamada de AJAX.

Nuevamente gracias por responder ya que así encontré el error, saludos!

Etiquetas: codeingniter, explorer, internet, memoria
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 05:16.