problemen met het laden van rss feeds
ik ben vrij nieuw op gebied van PHP, ik probeer rss feeds weer te geven op mijn site.
so far so good,
[
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$url = "http://news.google.com/?ned=us&topic=t&output=rss";
$rss = simplexml_load_file($url);
if($rss)
{
echo '<h1>'.$rss->channel->title.'</h1>';
echo '<li>'.$rss->channel->pubDate.'</li>';
$items = $rss->channel->item;
foreach($items as $item)
{
$title = $item->title;
$link = $item->link;
$published_on = $item->pubDate;
$description = $item->description;
echo '<h3><a href="'.$link.'">'.$title.'</a></h3>';
echo '<span>('.$published_on.')</span>';
echo '<p>'.$description.'</p>';
}
}
?>
$url = "http://news.google.com/?ned=us&topic=t&output=rss";
$rss = simplexml_load_file($url);
if($rss)
{
echo '<h1>'.$rss->channel->title.'</h1>';
echo '<li>'.$rss->channel->pubDate.'</li>';
$items = $rss->channel->item;
foreach($items as $item)
{
$title = $item->title;
$link = $item->link;
$published_on = $item->pubDate;
$description = $item->description;
echo '<h3><a href="'.$link.'">'.$title.'</a></h3>';
echo '<span>('.$published_on.')</span>';
echo '<p>'.$description.'</p>';
}
}
?>
nou dat was geen probleem.
Het probleem is echter dat ik er maar 1 bericht wil zien, dus probeerde ik:
Quote:
$maxitems = $rss->get_item_quantity(1);
$rss_items = $rss->get_items(0, $maxitems);
$rss_items = $rss->get_items(0, $maxitems);
maar nu houd het script er mee op, dus er word niks meer weergegeven.. ook geen foutmeldingen..
heeft iemand een idee, waar ik nou de mist in ben gegaan?
ik hoop dat jullie mij een beetje op weg kunnen helpen.
met vriendelijke groet
Kevin
Door simpel weg de foreach() weg te halen krijg je maar 1 resultaat zoals je aangeeft te willen.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$url = "http://news.google.com/?ned=us&topic=t&output=rss";
$rss = simplexml_load_file($url);
if($rss){
echo '<h1>'.$rss->channel->title.'</h1>';
echo '<li>'.$rss->channel->pubDate.'</li>';
$item = $rss->channel->item;
$title = $item->title;
$link = $item->link;
$published_on = $item->pubDate;
$description = $item->description;
echo '<h3><a href="'.$link.'">'.$title.'</a></h3>';
echo '<span>('.$published_on.')</span>';
echo '<p>'.$description.'</p>';
}
?>
$url = "http://news.google.com/?ned=us&topic=t&output=rss";
$rss = simplexml_load_file($url);
if($rss){
echo '<h1>'.$rss->channel->title.'</h1>';
echo '<li>'.$rss->channel->pubDate.'</li>';
$item = $rss->channel->item;
$title = $item->title;
$link = $item->link;
$published_on = $item->pubDate;
$description = $item->description;
echo '<h3><a href="'.$link.'">'.$title.'</a></h3>';
echo '<span>('.$published_on.')</span>';
echo '<p>'.$description.'</p>';
}
?>
Je HTML word nu geoutput als:
<h1>Title<h1>
<li>Date</li>
<h3>Title</h3>
<span>Published</span>
<p>Description</p>
Wat moet die <li> daar? <li> is een onderdeel van een <ul>. Maar er word geen <ul>, aangemaakt, word die wel aangemaakt dan horen die <h1>, <h3>, <span>, <p> in de <li> want die elementen zijn geen onderdeel van de <ul> maar van de <li>.
@Michiel- weet je zeker dat $rss->channel->item; geen array terug geeft? Zo ja dan werkt $item->title niet aangezien hij een object verwacht?...
Gewijzigd op 13/01/2014 11:36:27 door Joakim Broden
Metal Hertog Jan op 13/01/2014 11:34:46:
@Michiel- weet je zeker dat $rss->channel->item; geen array terug geeft? Zo ja dan werkt $item->title niet aangezien hij een object verwacht?...
Nee is een object dus werkt gewoon zo.
@metal hertog jan
nee, html staat inderdaad een beetje door de war, geen stress komt goed
BEDANKT!