Hola a Todos Compañeros, la verdad estoy creando un Weblog con un compañero y tengo problemas con las tildes.
Aqui va el codigo de mi funcion
Código PHP:
function crearRSS() {
global $filename, $tituloweb, $url, $tema;
$filename = strtolower(str_replace(' ', '', index)) . '.xml';
if (file_exists($filename)) {
@unlink($filename);
}
$handler = fopen($filename, 'w+');
// Creamos las cabeceras para el RSS
$rssfile = "<?xml version="1.0\" encoding=\"iso-8859-1\"?>
<rdf:RDF xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"
xmlns=\"http://purl.org/rss/1.0/\">
<channel rdf:about=\"".$url."\">
<title>".$tituloweb."</title>
<link>".$url . $filename ."</link>
<description>
Generado desde nuesta DB
".$tituloweb." ".$tema."
</description>
<items>
<rdf:Seq>\n";
/* Sacamos la informacion de las noticias con una consulta anidada */
$SQL_query = mysql_query('SELECT e.id,e.autorid,e.fecha,e.titulo,e.intro,e.texto,a.nombre,a.idautor'
. ' FROM entradas AS e'
. ' LEFT JOIN autores AS a ON(e.autorid=a.idautor)'
. ' ORDER by e.id DESC LIMIT 0, 10');
while($noticias = mysql_fetch_assoc($SQL_query))
{
/* Set Variables */
$time = $noticias['fecha'];
$titulo = $noticias['titulo'];
$intro = $noticias['intro'];
$nombre = $noticias['nombre'];
if (!$nombre)
{
$usuario = $noticias['nombre'];
}
/* Mostramos el link hacia cada articulo */
if ($noticias['texto'] != '')
{
$enlace = $url . '?op=leer&entrada=' . $noticias['id'] . '';
}
else if ($noticias['texto'] != '')
{
$enlace = $url . '?op=leer&entrada=' . $noticias['id'] . '';
}
else
{
$enlace = $url;
}
// Creamos la tabla de contenido
$rssfile .= " <rdf:li resource=\"".$titulo."\" />\n";
// Creamos la <item> constructora para cada noticia
$items .= " <item rdf:about=\"".$enlace."\">
<title>".str_replace('"', '"', $titulo) ."</title>
<link>".$enlace."</link>
<description>
$intro
</description>
<pubDate>".$time."</pubDate>
</item>\n";
}
// Cerramos la tabla de contenido
$rssfile .= " </rdf:Seq>
</items>
</channel>\n";
// Agregamos noticias por item
$rssfile .= $items;
// Creamos el pie del archivo de RSS
$rssfile .= "</rdf:RDF>\n";
// Pone la secuencia $rssfile en el archivo de RSS
if(!fputs($handler, $rssfile))
{
echo "no se pudo crear el Rss";
}
fclose($handler);
}
Hasta aqui todo bien pero me genera el xmlpero a la hora de querer abrirlo con el navegador me sale esto
The XML page cannot be displayed
Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later.
--------------------------------------------------------------------------------
Reference to undefined entity 'ordf'. Error processing resource 'http://localhost/blog2/index.xml'. Line 25, Position 121
<rdf:li resource="La 1ª Campaña Mundial de Seguridad en la Red ayuda a luchar contra el spam" />
El Xml generado es este
Código:
<?xml version="1.0" encoding="iso-8859-1"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns="http://purl.org/rss/1.0/">
<channel rdf:about="http://localhost/blog/">
<title>TLweblog</title>
<link>http://localhost/blog/index.xml</link>
<description>
Generado desde nuesta DB
TLweblog Aprendiendo Juntos
</description>
<items>
<rdf:Seq>
<rdf:li resource="Probando el BBCODE" />
<rdf:li resource="La 1ª Campaña Mundial de Seguridad en la Red ayuda a luchar contra el spam" />
</rdf:Seq>
</items>
</channel>
<item rdf:about="http://localhost/blog/?op=leer&entrada=4">
<title>Probando el BBCODE</title>
<link>http://localhost/blog/?op=leer&entrada=4</link>
<description>
La calidad nunca es un accidente; siempre es el resultado de un esfuerzo de la inteligencia
Este es un weblog que funciona muy bien pues :)
</description>
<pubDate>13/8/2004</pubDate>
</item>
<item rdf:about="http://localhost/blog/?op=leer&entrada=2">
<title>La 1ª Campaña Mundial de Seguridad en la Red ayuda a luchar contra el spam</title>
<link>http://localhost/blog/?op=leer&entrada=2</link>
<description>
El spam o correo electrónico se ha convertido es una de las más temibles amenazas de Internet. La proliferación de mensajes publicitando todo tipo de artículos ha llegado a tal extremo que, en este momento, suponen el 25% de la totalidad de los e-mails que se encuentran en circulación.
</description>
<pubDate>12/8/2004</pubDate>
</item>
</rdf:RDF>
En que estoy fallando o que debo hacer?
Ah por cierto al guardar las entradas las limpio asi
Código PHP:
$intro = strip_tags(trim($_POST['intro']));
$texto = strip_tags(trim($_POST['texto']));
//y despues realizo mi consulta a la db