Foros del Web » Programando para Internet » PHP »

Problemilla leyendo RSS

Estas en el tema de Problemilla leyendo RSS en el foro de PHP en Foros del Web. Hola, tengo el sigueinte script, que coge un archivo rss y lo lee, y me lo devuelve a una página, el problema viene que no ...
  #1 (permalink)  
Antiguo 27/02/2005, 16:10
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 16 años
Puntos: 0
Problemilla leyendo RSS

Hola, tengo el sigueinte script, que coge un archivo rss y lo lee, y me lo devuelve a una página, el problema viene que no me lee todo el archivo, ej: http://manicomio.bitacoras.com/rdf.xml

Código PHP:
    
    <?
    $file 
"http://manicomio.bitacoras.com/rdf.xml";
    
$byte "10000";
    
$ofile = @fopen("$file""r");
    
$contents = @fread ($ofile$byte);
    @
fclose($ofile);
    if(!
$contents)
    {
    echo 
"<p>\nUnable to Get XML/RSS data. Fatal Error.\n</p>";
    exit;
    }
    
preg_match_all ("'<title>(.*?)</title>'si"$contents$titles);
    
preg_match_all ("'<link>(.*?)</link>'si"$contents$link);
    
preg_match_all ("'<description>(.*?)</description>'si",$contents,$description);    
    
$count count($titles[1]);
    
$link $link[1];
    
$titles $titles[1];
    
$description $description[1];
    echo 
"<p>\n";
    for(
$i 0$i <= $count$i++)
    {
    echo 
"<a href=\"$link[$i]\">$titles[$i]</a>\n<br />$description[$i]\n<br/>\n";
    }
    echo 
"</p>";
    
?>
El problema creo que puede estar en la variable "byte", cuyo valor es 10000, pero lo aumento y demás... y sigue sin enseñar todo el código.

¿Qué se puede hacer?
  #2 (permalink)  
Antiguo 27/02/2005, 17:10
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
Tal vez esto te pueda ayudar:
http://www.forosdelweb.com/f18/sacar-datos-pagina-231359/

Saludos
  #3 (permalink)  
Antiguo 27/02/2005, 17:13
Avatar de baklao  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Ana - Isla de Margarita
Mensajes: 482
Antigüedad: 13 años
Puntos: 0
Hola trata de poner el valor de byte = "8192" y comentanos como te fue. ademas de eso dime que tipo de error te arroja.


Suerte y Salu2.

Bye
__________________
Atte. Mohamed :aplauso:

Última edición por baklao; 27/02/2005 a las 17:16
  #4 (permalink)  
Antiguo 27/02/2005, 17:30
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
También prueba con la función file_get_contents():
http://www.php.net/manual/es/functio...t-contents.php

O en todo caso puedes leerlo en partes y concatenando las partes:
Código PHP:
$file "http://manicomio.bitacoras.com/rdf.xml";
$ofile = @fopen("$file""r");
$contents '';
while (!
feof($ofile)) {
   
$contents .= fread($ofile4096); // o 8192
}
@
fclose($ofile); 
Saludos
  #5 (permalink)  
Antiguo 27/02/2005, 21:15
Avatar de yampoo  
Fecha de Ingreso: noviembre-2001
Ubicación: Vilanova i la Geltrú
Mensajes: 1.942
Antigüedad: 16 años
Puntos: 0
Gracias, al final salió bien usando lo que dijo jpinedo.
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 23:12.