Creare feed Rss con PHP e MySQL
In questo tutorial ci occuperemo della realizzazione di un sistema PHP e MySQL in grado di gestire in automatico un feed rss.
In particolare gestiremo la tabella MySQL "News" , composta da tre campi:
- ID
- TITOLO
- DESCRIZIONE
Ciò che il nostro sistema dovrà fare sarà connettersi al database MySQL, quindi selezionare la tabella "news" , estrapolare i dati e visualizzare le ultime news come elementi RSS.
Creiamo un nuovo file e chiamiamolo "rss.php":
<?php
// Eseguo le operazioni di connessione al database MySQL
$connessione = mysql_connect("localhost" , "username" , "password");
mysql_select_db("nomedatabase" , $connessione);
$selezionedati = "SELECT * FROM news ORDER BY ID DESC LIMIT 10";
$query = mysql_query($selezionedati) or die(mysql_error());
// Modifico l'intestazione e il tipo di documento da PHP a XML
header("Content-type: text/xml");
// Eseguo le operazioni di scrittura sul file
echo ("<rss version="2.0">");
echo ("<channel>");
echo ("<title>Nome del FEED </title>");
echo("<link>http://www.miosito.com</link>");
echo ("<description>Una descrizione del FEED e del mio sito</description>");
echo "<copyright>Copyright 2006 Mio sito.com </copyright>
";
echo "<docs>http://blogs.law.harvard.edu/tech/rss</docs>
";
echo "<managingEditor>miamail@miosito.com</managingEditor>
";
echo "<webMaster>miamail@miosito.com</webMaster>
";
echo ("<language>IT-it</language>");
while($array = mysql_fetch_array($query)){
extract($array);
echo "<item>
<title>$TITOLO</title>
<link>http://www.miosito.com/leggi.php?ID=$ID</link>
<description>$DESCRIZIONE</description>
</item>";
}
echo "</channel></rss>";
?>
Alcune considerazioni
Sebbene il codice sia sufficientemente commentato, sono
necessarie alcune considerazioni.
Si notino innanzitutto le righe:
// Eseguo le operazioni di scrittura sul file
echo ("<rss version="2.0">");
echo ("<channel>");
echo ("<title>Nome del FEED </title>");
echo("<link>http://www.miosito.com</link>");
echo ("<description>Una descrizione del FEED e del mio sito</description>");
echo "<copyright>Copyright 2006 Mio sito.com </copyright>
";
echo "<docs>http://blogs.law.harvard.edu/tech/rss</docs>
";
echo "<managingEditor>miamail@miosito.com</managingEditor>
";
echo "<webMaster>miamail@miosito.com</webMaster>
";
echo ("<language>IT-it</language>");
in cui dovremo inserire le informazioni del nostro FEED e
quindi del nostro sito web.
Alcuni di questi elementi sono facoltativi, ma è
buona abitudine inserirli comunque.
Particolare attenzione al codice
while($array = mysql_fetch_array($query)){
extract($array);
echo "<item>
<title>$TITOLO</title>
<link>http://www.miosito.com/leggi.php?ID=$ID</link>
<description>$DESCRIZIONE</description>
</item>";
}
in cui lo script effettua il ciclo di visualizzazione dei
vari records.
Ogni elemento di un file RSS è contenuto nel TAG
"ITEM" , e possiede tre sub-elementi:
- title
- link
- description
Come titolo, lo script manda a video il corrispondente testo
presente nel campo TITOLO della tabella a livello del record
selezionato.
Come description, lo script manda a video il rispettivo
testo presente nel campo DESCRIPTION della tabella a livello
del record selezionato.
Per quanto riguarda il sub-elemento LINK:
<link>http://www.miosito.com/leggi.php?ID=$ID</link>
da notare il fatto che si presuppone nel nostro sito esista
una pagina LEGGI.PHP che in base all'ID digitato,
visualizza i dati di una news particolare. Si tratta
sostanzialmente di una semplice pagina di visualizzazione
delle news.
Lo script visualizza l'ID corrispondente al record
selezionato per ogni elemento ITEM.
- Articolo precedente Controllare e testare le Regular Expressions sia in Php che in Javascript
- Articolo successivo Cambiare fogli di stile in base al browser utilizzato
Ti potrebbe interessare anche
commenta la notizia
Chiedi alla nostra Redazione!