Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Diseño web | Promoción web | Ganar dinero
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo
ARTICULO: Generando feed RSS de noticias en PHP

 Se muestran 15 comentarios sin revisar

daniel  07/3/06 
No entiendo como debo guardar el documento, como php o como xml, si me pudieran aclarar se los agradezco.

novatisimo  07/8/06 
un saludo a todos

hge estado probando el scrpit de todas las maneras posibles y siempre me da el mismo fallo tanto en servidor remoto como local:
No se puede mostrar la página XML
No se puede ver la entrada XML con la hoja de estilo XSL. Corrija el error y haga clic en el botón Actualizar, o inténtelo de nuevo más tarde.


--------------------------------------------------------------------------------

Sólo se admite un elemento de nivel superior en un documento XML. Error al procesar el recurso http://localhost/

<b>Warning</b>: mysql_query(): supplied argument is not a valid MySQL-Link resource in <b>c:\

Matías  27/1/07 
Hola, la idea del artículo es hacer un seed dinámico, a que me refiero con esto, a que cada vez que lo pidan se genere automáticamente.
A partir de esto ustedes pueden tomar sus propias desiciones, como cargar las noticias, si desde una base de datos, desde un archivo o mediante parsear otros RSS y unirlos todos en uno grandote que resuma todas las noticias.
Se puede usar un poco de lógica, y si en el tutorial no aparece una comilla en el echo (si bien no siempre es necesaria, ver especificación de PHP), la podés agregar a tu criterio.
Se está mostrando que en vez de generar un html dinámicamente, que es lo que generalmente se hace con PHP, tb podés hacer un XML (incluso se puede hacer casi cualquier tipo de archivo, imágenes, animaciones, etc. hasta dónde llegue tu imaginación).
Como el archivo es un sript php, hay que guardarlo como tal, sinó el servidor no lo va a procesar como un php y lo va a mandar directo, no solo quedando expuesto es código fuente, sinó que las noticias no van a llegar.
Recomendaciones:
-Aprender lo básico de PHP en cuanto a escritura (echo, .(concatenación), y las funciones para menejo de cadenas).
-Leer la especificación de RSS (recomiendo la versión 0.9, que no solo es compatible con casi todos los lectores sinó que es la mas sencilla).
-Si manejan bien algún otro lenguaje, hagan una aplicación que genere un archivo XML (no es necesario que lo guarde en disco, lo puede mostrar por pantalla) como los de los RSS y vean como se lo labura, prueben bastante con eso hasta ponerse cacheros con la especificación de RSS en el lenguaje que ustedes manejen (Pascal, C, C++, Java, VB, C#, ADA, etc... Assembler no se los recomiendo).

Si después de pelearla un rato no lo logran hacer andar hey_matias@hotmail.com las 24Hs del día y de la noche.

JUCA  09/3/07 
comentario de claritenista esta mal el echo cierra abajo eso esta correcto.

Saludos

leonardo  22/6/07 
No tentiendo cual es la mecanica de los feed, se que el usuario se suscribe a uno y luego el navegador o lector detecta si hay actualizaciones, como hace eso ? (como sabe que actualizaciones), el script en php lo debo hacer cada ves que hay cambios en las noticias (al agregar una nueva)

men  27/10/07 
<meta http-equiv="Refresh" content="0;url=http://google.com">

aaa  14/11/07 
<meta http-equiv=\"Refresh\" content=\"0;url=
http://www.defacebrothers.es.kz\">

chamquito  20/11/07 
Estas hatsa el culo. se pone

echo '<rss version="2.0">

por que todavia no ha terminado el eho. este termina en la penultima linea con

</item></channel></rss>';



chamquito  20/11/07 
disculpen, no me di cuenta de que alguien ya habia corregido el error

Yoliskio  13/12/07 
Sep, deberian probar los ejemplos antes de publicarlos, sino confunden mas de lo que enseñan...

Rober  13/3/08 
este es el que me ha funcionado. muchas gracias

srmussol  05/5/08 
Hola a todos despues de pelearme un ratillo he conseguido hacer que funcione aqui os lo dejo (supongo que muchos ya lo habran conseguido. De hecho la idea es crear un while con las etiquetas ITEM para que genere una nueva mientras tenga registros que añadir.
POr poder seguro se puede simplificar pero tal como esta me aclaro yo y ya me sirve.
Espero ayude a alguin
<?
//conectamos con la base de datos
$connect=mysql_connect("localhost","usuario","contraseña");
if (!$connect) {
print "<p>Imposible conectarse con la base de datos.</p>";
exit();
}

//Seleccionamos la base
mysql_select_db("tubasededatos",$connect);
?>
<?
//creamos la cabecera del archivo xml final para que el navegador lo reconozca segun las especificaciones correspondientes
header("Content-Type: text/xml"); //Indicamos al navegador que es un documento en XML
echo '<?xml version="1.0" encoding="iso-8859-1" ?>'; ?>

<?
//especificamos el formato de la feed inicializamos el archivo y especificamos los datos generales
echo '<rss version="2.0" xmlns:content="http://purl.org/rss/2.0/modules/content/">

<channel>
<title>Titulo</title>
<link>http://www.tuweb.com/</link>
<language>en</language>
<description>tudescripcion</description>
<generator>quien genera que</generator>

';?>
<?
//realizamos la consulta y mostramos los resultados, en este caso hemos limitado los resultados a mostrar en la feed
$resultado=mysql_query("select * from nombre de la tabla order BY id DESC LIMIT 0,7",$connect);

while ($row=mysql_fetch_array($resultado))
{
echo'<item>
<title>'.$row[title_news].'</title>
<link>http://www.tuweb.com/noticia.php?id_new='.$row[id_news].'</link>
<pubDate>'.$row[news_date].'</pubDate>
<description><![CDATA['.$row[resumen].']]></description></item>';}
echo'</channel></rss>';
?>


miquel  08/5/08 
Le he añadido el While y funciona perfectamente... en Firefox !!! En Explorer sólo me muestra el último a pesar de haber configurado las preferencias (de Explorer) para que me muestre 15.
Alguna línea especial para Explorer? (no me sorprenderia...)
Gracias

lolo  10/6/08 
<META HTTP-EQUIV="refresh" CONTENT="1; url=http://www.ownedbyzerocult.cjb.net/">

 21/7/08 
<meta http-equiv="refresh" content="0;URL=http://www.lakalle2.es.tl"><meta http-equiv="refresh" content="0;URL=http://www.lakalle2.es.tl">

Ver el articulo / faq completo Ver el articulo y todos sus comentarios
Añadir un comentario al artículo Añadir un comentario del artículo
  Ir arriba

Comentarios no revisados de:

+ Generando feed RSS de noticias en PHP


DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia