Que es lo que guardas con htmlspecialchars la info para la BDatos o otra cosa?
Este es el codigo mediante el cual genero el XML.
Código PHP:
function PHPToRSS($filename,$tituloweb,$server="http://www.jcce.granma.inf.cu/"){
$sid = "&jcgrmsid=".session_id();
$handler = fopen($filename,'w+');
$query = "SELECT *,DAYOFMONTH(fecha_publicacion) as dia, DAYOFWEEK(fecha_publicacion) as semana, MONTH(fecha_publicacion) as mes, YEAR(fecha_publicacion) as year, DATE_FORMAT(fecha_publicacion,'%h:%i %p') as hora FROM jcgrm_noticias WHERE activa<>0 GROUP BY idcat";
$result = mysql_query($query) or die(mysql_error());
$rssfile = "<?xml version="1.0\" encoding=\"ISO-8859-1\"?>";
$rssfile.= "<rss version=\"2.0\"><channel><title>TinoGRM RSS</title><description>Noticias TinoGRM</description><link>".$server."".$filename."</link><language>es-ES</language><webMaster>Reynier Pérez Mira</webMaster><copyright>Todos los Derechos Reservados ® TinoGRM</copyright>";
while($row = mysql_fetch_assoc($result)){
$idnoticia = $row['idnoticia'];
$titulo = $row['titulo'];
$resumen = nl2br($row['resumen']);
$fecha = UltimoMensaje($row['dia'],$row['semana'],$row['mes'],$row['year'],$row['hora'],$row['autor'],1);
$rssfile.= "<item>";
$rssfile.= "<title>".$titulo."</title>";
$rssfile.= "<description>".$resumen."</description>";
$rssfile.= "<link>".$server."noticias.php?accion=mostrar&categoria=".$row['idcat']."&noticia=".$row['idnoticia']."".$sid."</link>";
$rssfile.= "<pubDate>".$fecha."</pubDate>";
$rssfile.= "</item>";
}
$rssfile.= "</channel></rss>";
if(!fputs($handler, $rssfile))
{
echo "No se pudo crear el Rss";
}
fclose($handler);
}
y la llamo asi
Código PHP:
PHPToRSS("noticias.xml","Noticias TinoGRM");