Foros del Web » Programando para Internet » PHP »

script que se detiene solo

Estas en el tema de script que se detiene solo en el foro de PHP en Foros del Web. Buenas a todos, antes que nada vengo leyendo este foro hace años y siempre encontre la solucion a muchos problemas que tuve programando aqui pero ...
  #1 (permalink)  
Antiguo 11/06/2009, 03:27
 
Fecha de Ingreso: diciembre-2007
Mensajes: 34
Antigüedad: 16 años, 4 meses
Puntos: 1
script que se detiene solo

Buenas a todos, antes que nada vengo leyendo este foro hace años y siempre encontre la solucion a muchos problemas que tuve programando aqui pero esto me supera y no encuentro ninguna solucion, paso a explicar lo que quiero hacer y el problema que me da.

El sistema consiste en buscar en google unas siertas palabras, obtener las url que me da google con esas palabras y parsear todas las paginas, obteniendo solamente el texto.

Todo (o casi todo) me funciona a la perfeccion pero ahi dos problemas que no doy con ellos.

1- Ahi ciertas paginas que al querer obtener solamente el texto, la funcion no me devuelve nada y me termina el script solo.

2- Que cuando parseo mas de 6 paginas me da error de memoria.





No puedo colocar codigo PHP, me dice que tengo que tener minimo 30 mensajes, asi que les dejo esta direccion para que se puedan bajar el codigo

chauchas.es/key_search/texto.txt


el archivo

Código PHP:
include("simple_html_dom.php"); 
no lo pongo poer que es muuuuy extenso, pero si lo necesitan lo pongo.

el problema especialmente esta cuando llamo a la funcion html2txt y hace la funcion preg_replace, ahi en ciertas paginas me devuelve empty y me detiene el script.
Algun prodigio por favor que me pueda echar una mano???, desde ya mil gracias
  #2 (permalink)  
Antiguo 11/06/2009, 05:34
Avatar de centinela77  
Fecha de Ingreso: diciembre-2004
Ubicación: León
Mensajes: 143
Antigüedad: 19 años, 4 meses
Puntos: 1
Respuesta: script que se detiene solo

Este es un error muy típico que se produce en nuestros scripts PHP cuando excedemos el límite de memoria que tiene configurado por defecto nuestro servidor.

Para solucionarlo tenemos varias opciones:

1.- Incluye esta linea y la memoria que deseas usar en el script.
Código PHP:
 ini_set("memory_limit","32M"); 
2.- Si tenemos el módulo de apache mod_rewrite activado en nuestro servidor podemos escribir la siguiente línea en nuestro .htaccess.
Código:
php_value memory_limit 32M
3.-Otra opción es conectarnos por SSH a nuestro servidor y editar el fichero php.ini. Una vez localizado lo editamos y cambiamos memory_limit a 32MB y reiniciamos nuestro apache.

find / -name php.ini
/etc/init.d/httpd -k restart

4. También puedes cambiar el memory_limit desde webmin u otros paneles de administración e igual te resulta mas sencillo.

* 32 es la memoria que he puesto en los ejemplos, auméntala si ves que necesitas más memoria.

Un salu2
  #3 (permalink)  
Antiguo 11/06/2009, 05:43
 
Fecha de Ingreso: diciembre-2007
Mensajes: 34
Antigüedad: 16 años, 4 meses
Puntos: 1
Respuesta: script que se detiene solo

Muchas gracias centinela77, si lo del ini_set("memory_limit","32M"); lo habia puesto pero me seguia pasando lo mismo al final lo he solucionado.
El problema era que al tener un archivo tan grande en html se bloqueaba completamente, ahora en vez de tomar todo el html solamente tomo lo que esta dentro del Body y funciona perfecto. Muchas gracias a todos igualmente
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:29.