Hirdetés

Új hozzászólás Aktív témák

  • orkester

    senior tag

    válasz Sk8erPeter #10036 üzenetére

    Ez a teljes kód:
    <?php
    header("Content-Type: text/html; charset=utf-8");

    $db_hostname="xyx";
    $db_username="xyx";
    $db_password="xyx";


    if(isset($_GET['feed_url']))
    {
    $feed_url = $_GET['feed_url'];
    }
    else
    {
    die("Need to pass the (consistent) 'feed url'");
    }



    try
    {


    $db = mysql_connect($db_hostname,$db_username,$db_password);
    mysql_query("SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'");
    if (!$db)
    {
    die("Could not connect: " . mysql_error());
    }
    mysql_select_db("xyx", $db);

    echo "Starting to work with feed URL '" . $feed_url . "'";



    libxml_use_internal_errors(true);
    $RSS_DOC = simpleXML_load_file($feed_url);
    if (!$RSS_DOC) {
    echo "Failed loading XML\n";
    foreach(libxml_get_errors() as $error) {
    echo "\t", $error->message;
    }
    }



    $rss_title = $RSS_DOC->channel->title;
    $rss_link = $RSS_DOC->channel->link;
    $rss_category = $RSS_DOC->channel->category;
    $rss_description = $RSS_DOC->channel->description;
    $rss_date = $RSS_DOC->channel->pubDate;


    foreach($RSS_DOC->channel->item as $RSSitem)
    {

    $item_id = md5($RSSitem->title);
    $fetch_date = date("Y-m-j G:i:s");
    $item_title = $RSSitem->title;
    $item_date = date("Y-m-j G:i:s", strtotime($RSSitem->pubDate));
    $item_url = $RSSitem->link;
    $item_category = $RSSitem->category;
    $item_description = $RSSitem->description;


    echo "Processing item '" , $item_id , "' on " , $fetch_date , "<br/>";
    echo $item_title, " - ";
    echo $item_date, "<br/>";
    echo $item_url, "<br/>";


    $item_exists_sql = "SELECT item_id FROM rssingest where item_id = '" . $item_id . "'";
    $item_exists = mysql_query($item_exists_sql, $db);
    if(mysql_num_rows($item_exists)<1)
    {
    echo "<font color=green>Inserting new item..</font><br/>";
    $item_insert_sql = "INSERT INTO rssingest(item_id, feed_url, item_content, item_title, item_date, item_url, item_tema, fetch_date) VALUES ('" . $item_id . "', '" . $feed_url . "', '" . $item_description . "', '" . $item_title . "', '" . $item_date . "', '" . $item_url . "', '" . $item_category . "', '" . $fetch_date . "')";
    $insert_item = mysql_query($item_insert_sql, $db);
    }
    else
    {
    echo "<font color=blue>Frissítés</font><br/>";
    $item_insert_sql = "UPDATE rssingest SET item_tema = ('" . $item_category . "') WHERE item_id = '" . $item_id . "'";
    $insert_item = mysql_query($item_insert_sql, $db);
    }

    echo "<br/>";
    }

    } catch (Exception $e)
    {
    echo 'Caught exception: ', $e->getMessage(), "\n";
    }
    ?>

    És szeretném ha pl. ebből az RSS részletből nem csak az 1. <category> mező kerülne az adatbázisba:
    <item>
    <link>
    http://www.pafi.hu/_pafi/palyazat.nsf/ervdocidweburlap/490FAC2B35FC9E0EC1257A0F0038DC43
    </link>
    <title>
    <![CDATA[
    Milyen kérdést intéznék a miniszterekhez, ha képviselő lennék?
    ]]>
    </title>
    <description>
    <![CDATA[
    A kíirók pályázatot hirdetnek gyermekintézmények számára a Gyermekek Világnapja alkalmából.
    ]]>
    </description>
    <category>gyermek, ifjúság</category>
    <category>közművelődés</category>
    <category>művészet</category>
    <category>szociális</category>
    <pubDate>Sun, 03 Jun 2012 23:51:34</pubDate>
    </item>

    PSN: orkester ** Aki tud olyan nemzetközi hírről, ami a Ft-ot nem gyengíti dobjon egy privátot - 2012.05.24. óta 0db üzenet ** Ha nem válaszolok valószínűleg le vagy tiltva és nem véletlenül. ** Ha valami karcos, kopott, megrágta a kutya, kérlek ne hirdesd újszerűnek, köszi!

Új hozzászólás Aktív témák