Martedi, 13 maggio 2008 - 11.23.25 A A A Homepage | Forum | Feed RSS


salta il menu principale





Ricerca articoli




PHP: Leggere i feed RSS con PHP
Tutorials, esempi di codice, per illustrare come realizzare applicazioni php professionali.
 

Cosa sono i feed RSS

I feed RSS sono file XML, che seguono degli standard per garantire l'accesso e la lettura del loro contenuti a browser, Feed Reader e a script (nel nostro caso PHP).
Questi contengono informazioni su news, articoli o altro ancora... Per ogni articolo viene fornito il titolo, una descrizione, l'autore, la data e l'ora di pubblicazione, nonche' il link per leggere l'intero articolo.

Vengono molto utilizzati dai blog, ma anche da siti come WebMasterPoint.org che vogliono offrire ai propri utenti gli ultimi aggiornamenti in tempo reale.

Lo script PHP per leggere i feed RSS

Con lo script asp sotto presentato potrete leggere e pubblicare direttamente sul vostro sito web le news di WebMasterPoint.org (ma va bene per qualsiasi feed RSS di altri siti) o volende gli aggiornamenti, i messaggi del forum o gli script (per altre informazioni leggi la nostra pagina dei Feed RSS di WebMasterPoint.org)

Il codice

<ul><?php

$insideitem = false;
$tag = "";
$title = "";
$description = "";
$link = "";

function startElement($parser, $name, $attrs) {
global $insideitem, $tag, $title, $description, $link;
if ($insideitem) {
$tag = $name;
} elseif (strtolower($name) == "item") {
$insideitem = true;
}
}

function endElement($parser, $name) {
global $insideitem, $tag, $title, $description, $link;
if (strtolower($name) == "item") {
printf("<li><strong><a href='%s' title='Leggi: %s' target='_blank'>%s</a></strong><br />",
trim($link),trim($title),trim($title));
printf("%s</li>",trim($description));
$title = "";
$description = "";
$link = "";
$insideitem = false;
}
}

function characterData($parser, $data) {
global $insideitem, $tag, $title, $description, $link;
if ($insideitem) {
switch (strtolower($tag)) {
case "title":
$title .= $data;
break;
case "description":
$description .= $data;
break;
case "link":
$link .= $data;
break;
}
}
}

$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData");
// Carico indirizzo feed rss delle news di WebMasterPoint.org
$fp = fopen("http://www.webmasterpoint.org/rss/news.xml","r")
// ALTRI FEED UTILI
// Ultimi articoli di WebMasterPoint.org: http://www.webmasterpoint.org/rss/articoli.xml
// Ultimi post del forum: http://forum.webmasterpoint.net/external.php?type=RSS
// Ultimi post del forum ASP: http://forum.webmasterpoint.net/external.php?type=RSS&forumids=24
// Ultimi post del forum PHP: http://forum.webmasterpoint.net/external.php?type=RSS&forumids=28
// Ultimi post del forum Flash: http://forum.webmasterpoint.net/external.php?type=RSS&forumids=13
// Ultimi post del forum Snitz Forum: http://forum.webmasterpoint.net/external.php?type=RSS&forumids=25
// Ultimi post del forum Off Topics: http://forum.webmasterpoint.net/external.php?type=RSS&forumids=19

or die("Error reading RSS data.");
while ($data = fread($fp, 4096))
xml_parse($xml_parser, $data, feof($fp))
or die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
fclose($fp);
xml_parser_free($xml_parser);

?></ul>

Modificare l'output

E' possibile modificare l'output dello script (il modo di visualizzare gli articoli) in due modi:

  • Con i CSS
  • con il codice html

Utilizzando i css e' possibile modificare l'output impostando uno stile all'elenco <
Mentre per modifiche al codice html, basta cambiare il codice all'interno dei printf:
printf("<li><strong><a href='%s' title='Leggi: %s' target='_blank'>%s</a></strong><br />",
printf("%s</li>",trim($description));

Per qualsiasi domanda, chiedete aiuto gratuitamente sul nostro forum: http://forum.webmasterpoint.net

Le ultime news
Stampa NewsStampa Pagina - Info sull'autoreInfo sull'autore
SEGNALA QUESTA LEZIONE AD UN AMICO CON ICQICQ o EMAILEMAIL
forumDISCUTI DI QUESTA LEZIONE SUL FORUM

Pubblicità locale Web Marketing

Newsletter

Iscriviti alla nostra newsletter per ricevere novita e aggiornamenti dal nostro sito in modo GRATUITO!