elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [Solucionado] Allowed memory exhausted
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Solucionado] Allowed memory exhausted  (Leído 7,445 veces)
SirLanceCC


Desconectado Desconectado

Mensajes: 1.093


Ver Perfil WWW
[Solucionado] Allowed memory exhausted
« en: 25 Enero 2008, 23:20 pm »

Pues el php  me tira este error y no he logrado saber por que
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 128 bytes) in C:\www\kinder\functions\data.php on line 17

Es raro por que si se dan cuenta trata de alojar 128 bytes y tiene como límite 128 MEGA bytes!!! El pedazo de código es este:
Código
  1. function limpiar_salida($data){
  2. for($x=0;$x<count($data);$x++){
  3. for($y=0;$y<count($data[$x]);$y++){
  4. $data[$x][$y] = htmlspecialchars($data[$x][$y]); //Línea 17
  5. }
  6. }
  7. return $data;
  8. }

Se me hace muy raro... no se si estoy haciendo algun tipo de boucle infinito sin darme cuenta... pero si comento la línea 17 todo funciona normal, aunque claro, no se limpian las variables

Gracias...


« Última modificación: 26 Enero 2008, 08:09 am por -| Sir_Lance |- » En línea

Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: Allowed memory exhausted
« Respuesta #1 en: 26 Enero 2008, 00:44 am »

proba dos cosas, el numero q devuelve, count($data) y count($data[$x]). y proba usar una variable diferente para guardar, ej data2.

por q a simple vista no hay errores.


En línea

???

Desconectado Desconectado

Mensajes: 279


++ Elite Hacker ++


Ver Perfil
Re: Allowed memory exhausted
« Respuesta #2 en: 26 Enero 2008, 03:22 am »

seria bueno saber cual es la linea 17 de tu codigo para "tracear" el error...
En línea

Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: Allowed memory exhausted
« Respuesta #3 en: 26 Enero 2008, 04:14 am »

Citar
seria bueno saber cual es la linea 17 de tu codigo para "tracear" el error...

la linea 17 es esa q esta comentada con....... // linea 17 jajaja
En línea

Universal SAC

Desconectado Desconectado

Mensajes: 41


Universal SAC


Ver Perfil
Re: Allowed memory exhausted
« Respuesta #4 en: 26 Enero 2008, 05:09 am »

No podemos depurarlo sin la información completa... postea la función count()  :¬¬
En línea

~UNIVERSAL[HACK]
Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: Allowed memory exhausted
« Respuesta #5 en: 26 Enero 2008, 05:28 am »

Citar
No podemos depurarlo sin la información completa... postea la función count() 

count();
En línea

SirLanceCC


Desconectado Desconectado

Mensajes: 1.093


Ver Perfil WWW
Re: Allowed memory exhausted
« Respuesta #6 en: 26 Enero 2008, 07:35 am »

Mmm hasta había pensado que era el php que andaba fallando y resulta que no...
Citar
proba dos cosas, el numero q devuelve, count($data) y count($data[$x]).
Esto me sirvió mucho ya que me dí cuenta que count($data[$x]) devolv siempre el doble de datos que yo solicitaba... al final resulta que mysql_fetch_array me devolve los datos así:
Código:
Array
(
    [0] => Array
        (
            [0] => 5
            [clave_alumno] => 5
            [1] => Domínguez
            [apellido_p] => Domínguez
            [2] => Sánchez
            [apellido_m] => Sánchez
            [3] => Manolo
            [nombres] => Manolo
            [4] => 1
            [sexo] => 1
            [5] => 2008
            [ano_ingreso] => 2008
            [6] => 12 meses
            [modo_pago] => 12 meses
        )

    [1] => Array
        (
            [0] => 6
            [clave_alumno] => 6
            [1] => Pereira
            [apellido_p] => Pereira
            [2] => López
            [apellido_m] => López
            [3] => Chuchita
            [nombres] => Chuchita
            [4] => 0
            [sexo] => 0
            [5] => 2008
            [ano_ingreso] => 2008
            [6] => 10 meses
            [modo_pago] => 10 meses
        )

)
Entonces como se podrán dar cuenta los datos están repetidos. Y efectivamente, en $data[0] hay 14 elementos, pero en el for() a la hora de llegar a 8 provocaba un error.

No sé si hay alguna función que me permita recorrer TODOS los valores de un arry, sin exepción...

EDITO: Ya lo encontré! en vez de usar mysql_fetch_array() usaré mysql_fetch_assoc() que sólo devuelve índices asociativos (no numericos), y para recorrer el array foreach() ;)
« Última modificación: 26 Enero 2008, 08:08 am por -| Sir_Lance |- » En línea

Ferсhu


Desconectado Desconectado

Mensajes: 1.215

Menos palabras y Mas codigos.


Ver Perfil WWW
Re: [Solucionado] Allowed memory exhausted
« Respuesta #7 en: 26 Enero 2008, 17:17 pm »

Q bueno q lo hallas solucionado.

Citar
No sé si hay alguna función que me permita recorrer TODOS los valores de un arry, sin exepción...

aveces, depende el lenguaje y los tipos de datos, se da q el array cuando termina apunta a null entonces se puede hacer:

Código:
for(i=0;$data[i];i++); 
for(j=0;$data[i][j];j++);


cuando sale del rango apunta a null y termina el bucle, en algunas casos no funciona pero vale la pena intentar, mas cuando no te acordas las funciones.
« Última modificación: 26 Enero 2008, 17:19 pm por <~>FeRcHu<~> » En línea

???

Desconectado Desconectado

Mensajes: 279


++ Elite Hacker ++


Ver Perfil
Re: [Solucionado] Allowed memory exhausted
« Respuesta #8 en: 27 Enero 2008, 05:17 am »

Citar
seria bueno saber cual es la linea 17 de tu codigo para "tracear" el error...

la linea 17 es esa q esta comentada con....... // linea 17 jajaja

JAJAJA!! Lo siento lei rapido el codigo.. xD
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines