Foros del Web » Programando para Internet » PHP »

PHP OO Problema con get_file_contents()

Estas en el tema de Problema con get_file_contents() en el foro de PHP en Foros del Web. Hola, Hasta hace unos meses, usaba include()'s en mi web para importar html que tenia en otro hosting, pero ahora no funcionan; estuve mirando y, ...
  #1 (permalink)  
Antiguo 08/02/2013, 15:10
Avatar de MeteoLesOlives  
Fecha de Ingreso: julio-2012
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 0
Problema con get_file_contents()

Hola,

Hasta hace unos meses, usaba include()'s en mi web para importar html que tenia en otro hosting, pero ahora no funcionan; estuve mirando y, efectivamente, lo havian desactivado los del hosting. Una vez encontrado el problema, decido usar
Código PHP:
<?php echo get_file_contents("....");?>
, el problema parece haverse solucionado, pero mas adelante observo que unos get_file_contents() que habia en el archivo incluido anteriormente, no se ejecutan y, en los navegadores, me aparecen o como error por el "<?", firefox, o como una simple anotacion, explorer.

Con esto he llegado a la conclusion que en un include() puede haber get_file_contents() y include() pero en un get_file_contents() no puede haber mas de estos.

Que solucion me podeis dar expertos ? Quiero que me incluia el contenido del otro archivo, es decir, los Iframes no me gusta usarlos que digamos.

Gracias de antemano, si no entendeis alguna cosa me lo comentais para aclararlo ;D
  #2 (permalink)  
Antiguo 08/02/2013, 15:16
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Problema con get_file_contents()

Mala configuración de los archivos. Recomiendo que pases a cada uno de los servidores los archivos que quieras leer porque no vas a obtener el código PHP, sino el resultado y posiblemente no suba la página.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 08/02/2013, 15:28
Avatar de MeteoLesOlives  
Fecha de Ingreso: julio-2012
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con get_file_contents()

el problema que tengo es que son paginas que se actualizan cada 5 minutos y para no colapsar el servidor debo utilizar combinaciones un poco mas complicadas de lo normal, de aqui lo de los includes i dentro de estos get_file_contents().

Añadiremos un poco de info.

tengo el archivo "index.php":
Código PHP:
Ver original
  1. <?php echo get_file_contents("http://www.otraweb.com/index.htm");?>
en el archivo "http://www.otraweb.com/index.htm":
Código PHP:
Ver original
  1. <?php echo get_file_contents("http://www.otraweb.com/pag.htm");?>
es en este ultimo punto que se produce el problema.

con los include() no tuve ningun problema y era lo mismo, digamos que estoy buscando un equivalente que no sea get_file_contents :)
  #4 (permalink)  
Antiguo 08/02/2013, 15:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema con get_file_contents()

Pues en primera, ¿que hace tu función get_file_contents?.

Ya que eso es esencial, ya que include es algo totalmente diferente...
  #5 (permalink)  
Antiguo 08/02/2013, 18:05
Avatar de MeteoLesOlives  
Fecha de Ingreso: julio-2012
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con get_file_contents()

Cita:
Iniciado por GatorV Ver Mensaje
Pues en primera, ¿que hace tu función get_file_contents?.

Ya que eso es esencial, ya que include es algo totalmente diferente...
el get_file_contents me hace la funcion del include(), lo acabo de comentar. es en los get_file_contents de la pagina que incorporo la que falla.

no se si era eso lo que comentavas :S
  #6 (permalink)  
Antiguo 08/02/2013, 18:35
Avatar de MeteoLesOlives  
Fecha de Ingreso: julio-2012
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con get_file_contents()

Perdonad, graso error, no es get_file_contents, es file_get_contents ;D no se si esto ayuda en algo.
  #7 (permalink)  
Antiguo 08/02/2013, 20:15
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema con get_file_contents()

Ah eso es otra cosa y no, file_get_contents NO hace lo mismo.

file_get_contents lee un archivo y devuelve un string, como tal. include() trae el archivo pero con la gran diferencia de que evalua el contenido del archivo cuando detecta los tags de php (<?php).

Por eso es que no te funciona, si quieres que te funcione, en teoría podrías pasar lo que te devuelve file_get_contents usando eval() pero abres un riesgo muy grande de seguridad en tu servidor.
  #8 (permalink)  
Antiguo 09/02/2013, 07:05
Avatar de MeteoLesOlives  
Fecha de Ingreso: julio-2012
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con get_file_contents()

estoy probando varias combinaciones, pero nada. el archivo que tengo en el server me introduce el otro archivo, ya sea con curl, file_get_contents, (include y require estan betados des del server, de aquí el problema) sin ningun problema, pero los file_get_contents del archivo incluido sigue sin leermelo.

Me parece que el server me lee el php que hay en este, pero passa por alto los que hay en el archivo adjunto, porque me lo deja tal qual y luego los navegadores me dan error en <?.
  #9 (permalink)  
Antiguo 09/02/2013, 13:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Problema con get_file_contents()

Es por lo que te digo, file_get_contents no evalua el resultado del script, es por eso que no te sirve, porque include trabaja de una manera muy diferente.

Para que te funcione mas o menos lo que tienes que hacer es que todos tus scripts del server B sean extensión PHP para que al hacer el HTTP request, se ejecute y te devuelva el resultado, si los dejas como html, no se van a ejecutar porque no entran por el parser de PHP.

Saludos.
  #10 (permalink)  
Antiguo 09/02/2013, 13:30
Avatar de MeteoLesOlives  
Fecha de Ingreso: julio-2012
Mensajes: 44
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Problema con get_file_contents()

Cita:
Iniciado por GatorV Ver Mensaje
Es por lo que te digo, file_get_contents no evalua el resultado del script, es por eso que no te sirve, porque include trabaja de una manera muy diferente.

Para que te funcione mas o menos lo que tienes que hacer es que todos tus scripts del server B sean extensión PHP para que al hacer el HTTP request, se ejecute y te devuelva el resultado, si los dejas como html, no se van a ejecutar porque no entran por el parser de PHP.

Saludos.
ahora veo por donde van los tiros :) en el post anterior no lo vi.

gràcias por la aclaracion.

Etiquetas: html, include
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 00:41.