1

私がやろうとしているのは、PHP の simpleXML 関数を使用して、RSS XML フィードを MySQL データベースにインポートすることです。しかし、PHP スクリプトが行う唯一のことは、データベースに 0 を書き込むことです。私は何を間違っていますか?

サンプル rss.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet title="XSL_formatting" type="text/xsl" href="/divers/rss/xslt.php" ?> 
<rss version="2.0"  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
       <title></title>
       <link></link>
       <description></description>
   <lastBuildDate></lastBuildDate>
   <ttl></ttl>
   <item>
       <title></title>
       <description></description>
       <link></link>
       <guid></guid>
       <pubDate></pubDate>
   </item>
</channel>
</rss>

PHP

<?php

  include ('config.php'); 

  $xml_file = "http://xml.xml/rss.xml";
  $xml_load = simplexml_load_string(file_get_contents($xml_file));

  $link = (string)$xml_load->link;
  $guid = (string)$xml_load->guid;

  $sql = "INSERT INTO table (link,guid) VALUES('$link','$guid');";

  mysql_query($sql) or die("Error ".mysql_error());

?>
4

1 に答える 1

0

これは私がしていたことです:

$sxml = simplexml_load_file($feedURL); // loads in simple xml format

        foreach ($sxml->entry as $entry) {
            $title = stripslashes($entry->title);
            $summary = stripslashes($entry->summary);
        }

ご覧のとおり、私は を使用していますstripsplashes()

私はそれが次のようになると思います:

foreach($xml->item as $item) {
  $link = stripslashes($item->link);
  $guid = stripslashes($item->guid);
}
于 2013-01-05T19:55:08.937 に答える