Tema: FAQ's de PHP
Ver Mensaje Individual
  #198 (permalink)  
Antiguo 25/08/2008, 05:24
eContento
 
Fecha de Ingreso: junio-2004
Mensajes: 621
Antigüedad: 20 años, 5 meses
Puntos: 25
Respuesta: FAQ's de PHP

Tema: Generar un fichero rss.xml

Pregunta: ¿Cómo puedo generar un feed o RSS de mi web?

Respuesta: Suponemos que la web tiene artículos y estos están en una base de datos. El código para generar ese RSS y que otras webs os puedan sindicar es:

Código PHP:
<?php
  
include("./conexionBBDD.php");
    
$link=Conectarse();
    
$archivo fopen("/rss.xml""w");
    if (
$archivo) {
        
fputs ($archivo"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>\n");
        
fputs ($archivo"<rss version=\"2.0\">\n");
        
fputs ($archivo"\n");
        
fputs ($archivo"<channel>\n");
        
fputs ($archivo"     <title>e-Contento</title>\n");
        
fputs ($archivo"     <link>http://e-contento.com</link>\n");
        
fputs ($archivo"     <language>es-ES</language> \n");
        
fputs ($archivo"     <description>Web que...</description>\n");

        
$result=mysql_query("SELECT titulo, entradilla, id, DATE_FORMAT(fecha,'%a, %d %b %Y') AS fecha FROM articulo ORDER BY fecha DESC LIMIT 0,25",$link);
        if (
$result){
            while(
$row mysql_fetch_array($result)) {
                
$stTitulo $row[titulo];
                
$stTitulo html_entity_decode($stTitulo);
                
                
$stDescription $row[entradilla];
                
$stDescription str_replace ("src=\"/img/""src=\"http://e-contento.com/img/"$stDescription );
                
$stDescription str_replace ("src=\"img/""src=\"http://e-contento.com/img/"$stDescription );
                
                
fputs ($archivo"     <item>\n");
                
fputs ($archivo"             <title><![CDATA[".$stTitulo."]]></title>\n");
                
fputs ($archivo"             <pubDate>".$row[fecha]."</pubDate>\n");
                
fputs ($archivo"             <link>http://e-contento.com/c_articulo.php?id=".$row["id"]."</link>\n");
                
fputs ($archivo"             <description><![CDATA[".$stDescription."]]></description>\n");
                
fputs ($archivo"     </item>\n");
            }
        }
        
fputs ($archivo"</channel>\n");
        
fputs ($archivo"</rss>\n");
        
    }
    
fclose ($archivo);
?>
__________________
eContento
- Mis artículos y tutoriales
- Mis jsfiddles

Última edición por jam1138; 25/08/2008 a las 14:13