Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/06/2009, 17:28
Avatar de ZydRick
ZydRick
 
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
Problema con Feed RSS

Hola amigos, les cuento mi problema, estoy trabajando con un script para generar archivos RSS desde datos extraídos de MySQL, el código fuente es el siguiente:

Código PHP:
<?php
    $db_direccion 
'localhost';
    
$db_user 'usuario';
    
$db_pass '*******';
    
$db_name 'bd';
    
$db_table 'articulos';
    
$db_campo_fecha 'fecha';
    
$db_campo_titulo 'titulo';
    
$db_campo_categoria 'categoria';
    
$db_campo_texto 'contenido';
    
$db_campo_url 'id_art';
    
$pg_titulo 'Titulo web';
    
$pg_link 'http://www.miweb.com';
    
$pg_descripcion 'bla bla bla.';
    
$pg_idioma 'es';
    if(isset(
$_REQUEST['perPage'])) {
        
$perPage $_REQUEST['perPage'];
    }else {
        
$perPage 10;
    }
    
header("Content-type: text/xml"); 
    echo 
'<?xml version="1.0" encoding="ISO-8859-1"?>';
?>
    <rss version="2.0">
        <channel>
        <title><?=$pg_titulo?></title>
        <link><?=$pg_link?></link>
        <description><?=$pg_descripcion?></description>
        <pubDate><?php echo date("r"strtotime('now')); ?></pubDate>
        <generator>Web</generator>
        <language><?=$pg_idioma?></language>
        <?php
            $db 
mysql_connect($db_direccion,$db_user,$db_pass);
            include(
'bbcode.php');
            include(
'funcionparrafo.php');
            
$sql "SELECT * FROM $db_table ORDER BY $db_campo_fecha DESC LIMIT 0,$perPage";
            
$qry mysql_db_query($db_name,$sql,$db);
            while(
$row mysql_fetch_array($qry)) {
                
$fecha date("r"strtotime($row[$db_campo_fecha]));
                
$tit stripslashes($row[$db_campo_titulo]);
                
$autor $row['autor'];
                
$categoria $row[$db_campo_categoria];
                
$cat $row['namecat'];
                
$imagepost $row['imagepost'];
                
$desc bbcode($row[$db_campo_texto]);
                
$desc php($desc);
        
?>
                <item>
                    <title><![CDATA[<?=$tit?>]]></title>
                    <link><?=$pg_link?>/<?=$db_table?>/<?=$cat?>/<?=$row['subtitle']?>/</link>
                    <comments><?=$pg_link?>/<?=$db_table?>/<?=$cat?>/<?=$row['subtitle']?>/#comentarios</comments>
                    <pubDate><?=$fecha?></pubDate>
                    <category><![CDATA[<?=$categoria?>]]></category>
                    <guid><?=$pg_link?>/<?=$db_table?>/<?=$cat?>/<?=$row['subtitle']?>/#comentarios</guid>
                    <description><![CDATA[<?=strip_tags(stripslashes(parrafo($desc)))?>]]></description>
                </item>
        <?php
            
}
        
?>
        </channel>
    </rss>
Hasta ahí el script funciona sin ningún problema, pero cuando le añado esta línea después de </description>:

Código PHP:
<content:encoded><![CDATA[<p><img src="<?=$imagepost?>" /></p><?=stripslashes($desc)?>]]></content:encoded>
... que muestra el artículo completo, al ejecutarlo en el navegador el script ya no funciona, sólo se ve el título y la descripción general, pero los links de los artículos, fecha y descripción ya no aparecen.

Cuando voy a ver el código fuente desde el navegador se pueden ver los datos correctamente, pero no comprendo por qué no se visualizan al ejecutar el script. ¿Dónde puedo estar fallando?, agradezco de antemano la ayuda.

Saludos.

Última edición por ZydRick; 01/06/2009 a las 17:34