• User Newbie

    Problema nell'estrarre la data da tabella mysql e riproporla in un feed rss

    Ciao a tutti, ho cercato di dare un titolo piuttosto esaustivo.

    Sto provando a creare un feed rss, estrapolando i dati da un DB. Mi riesce tutto abbastanza bene (come vorrei, insomma), ma non per ciò che concerne la data.

    Questo è il codice che ho adattato alle mie esigenze (ho tolto tutti i prefissi dagli url, altrimenti non avrei potuto postare):

    <?php
    // Eseguo le operazioni di connessione al database MySQL
        $connessione = mysql_connect("*****" , "*****" , "*****");
        mysql_select_db("Sql233461_1" , $connessione);
        
    //aggiungere alla fine LIMIT 10 per estrarre solo i primi 10
    $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>NickCave.it - Notizie, tour e concerti.</title>");
    echo ("<link>nickcave.it</link>");
    echo ("<description>Abbonati a questo feed rss per restare aggiornato su Nick Cave ed i suoi progetti, con news e concerti.</description>");
    echo "<copyright>Copyright ".date("Y",time())." NickCave.it </copyright>
    ";
    echo "<docs>nickcave.it/rss.php</docs>
    ";
    echo "<managingEditor>*****</managingEditor>
    ";
    echo "<webMaster>*****</webMaster>
    ";
    echo ("<language>IT-it</language>");
    while($array = mysql_fetch_array($query)){
    echo "<item>
    <title><=!=[=C=D=A=T=A=[".$array['sommario']."]=]=></title>
    <link>    nickcave.it/news.php?IdNews=".$array['id']."</link>
    <pubDate>".date('D, d M Y H:i:s O',$array['data'])."</pubDate>
    </item>";
    }
    echo "</channel></rss>";
    ?>
    

    Qui il risultato che ottengo: nickcave.it/rss.php

    Come vedete la data è impostata al 1 Gennaio 1970. Ho letto un sacco di roba, ma ho solo le idee più confuse. Nel DB il tutto è così impostato:

    nickcave.it/marco/data.jpg

    Ho provato a cambiare il tipo, mettendo timestamp o altro, così come la voce prefedinito etc. Nulla. Ho anche fatto un danno, ma per fortuna avevo fatto un backup del database.

    Insomma, qualcuno potrebbe aiutarmi col codice? 🙂 Ho bisogno della data per integrare al meglio il feed con i social...


  • User Newbie

    aggiungo che, all'interno della tabella news, ho anche un campo che si chiama "tipo", dove c'è set('concerto', 'news'), come faccio a dire tramie la select che voglio solo le news della categoria news e non quelle della categoria concerto?

    grazie.


  • User Newbie

    buone nuove, il problema del post appena sopra l'ho risolto facendo $selezionedati = "SELECT * FROM news WHERE tipo='news' ORDER BY id DESC LIMIT 10";

    rimane il problema della data, spero qualcuno sappia aiutarmi.