Php 无法将数据从RSS源插入MySQL数据库

Php 无法将数据从RSS源插入MySQL数据库,php,mysql,xml,rss,Php,Mysql,Xml,Rss,我正在使用SimplePie(并且已经使用过MagPie)开源RSS解析器。我已经能够获取RSS提要并在网页上显示标题、描述和日期 我曾尝试将数据插入MySQL数据库,但在某些方面失败,这导致了混乱 require_once 'rss_fetch.inc'; $url = 'http://macrumors.com/rss.xml'; $rss = fetch_rss($url); echo "Site: ", $rss->channel['title'], "<br>";

我正在使用SimplePie(并且已经使用过MagPie)开源RSS解析器。我已经能够获取RSS提要并在网页上显示标题、描述和日期

我曾尝试将数据插入MySQL数据库,但在某些方面失败,这导致了混乱

require_once 'rss_fetch.inc';

$url = 'http://macrumors.com/rss.xml';
$rss = fetch_rss($url);

echo "Site: ", $rss->channel['title'], "<br>";

foreach ($rss->items as $item ) {
    $title = $item[title];
    $url   = $item[link];
    $pub   = $item[pubdate];
    $desc  = $item[description]; 

    echo "<a href=$url>$title</a></li><br>";
    echo "$pub<br>";
    echo "<p>$desc</p><br>";
    echo "<br>";
当我获取并显示至少20篇文章时,当我刷新脚本时,只有3篇“文章”插入到数据库中。如果我从MySQL查询中删除内容中的描述,我就能够插入我获取的所有标题和其他数据

所以我不确定我的问题是我的RSS脚本还是我插入数据库的方式

试着做:

 mysql_query("INSERT INTO articles (title, linkto, published, contents) VALUES ('$title', '$url','$pub','$desc')"); 

$desc  = mysql_real_escape_string($item[description]);
它应该会起作用

注意:-在插入表之前,需要对所有值执行此操作。
希望它有帮助

很可能您没有使用它来确保文本在放入SQL字符串之前已转义。如果description包含任何
,您将得到如下结果:

INSERT into xx (yy) VALUES ('don't');
字符串将在
中的
处结束,文本的其余部分将导致语法错误