Feed check, kijken of het een xml/rss is

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ferdi R

Ferdi R

21/10/2015 15:17:09
Quote Anchor link
Ik heb een input gemaakt waar je een feed kan invoeren, met behulp van jQuery controleer ik met een php bestand of de feed al in de database bestaat ja of nee, dat werkt, maar nu wil ik kijken of het wel om een werkelijke feed gaat.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
else if(isset($_GET['realfeed']))
{

    if(empty(trim(@file_get_contents($_GET['realfeed']))))
    {

        echo 'leeg';
    }

    else
    {
        $Xml = @simplexml_load_file($_GET['realfeed']);
        
        if($Xml === false)
        {

            echo 'nee';
        }

        else
        {
            //echo 'ja';
            
            // Hier inhoud checken: item, title, pubDate ect..
            //foreach($Xml->item as $item)
            //{

                $titel = $Xml->$title;
                if(!empty($titel))
                {

                    echo 'ja';
                    echo '<br />'.$titel;
                }

                else {
                    echo 'geen'; // geen title gevonden.
                    echo '<br />'.$titel;
                }

            //}
        }
    }  
}

?>


Feeds die ik test:

- http://rss.politie.nl/rss/ab/gemeenten/overijssel/hengelo.xml (uitkomst: leeg, dus deze komt al niet verder dat file_get_contents)
- http://projects.knmi.nl/RSSread/rss_KNMIpersberichten.php (uitkomst: Fout, deze pakt de title niet in de feed)
 
PHP hulp

PHP hulp

24/04/2024 03:13:13
 
Peter K

Peter K

21/10/2015 15:32:23
 
Ivo P

Ivo P

21/10/2015 15:57:10
Quote Anchor link
hengelo.xml toont wel degelijk inhoud.

en waarom je die knmi feed wilt afkeuren, is me ook niet duidelijk. Er staan wel title's in. Zowel voor de feed zelf, als voor de berichten in de feed.
 
Ferdi R

Ferdi R

21/10/2015 16:07:19
Quote Anchor link
@Ivo P, Niet elke feed is het zelfde, de meeste nieuws feeds hebben een title, discription, pubDate en link. Daar wil ik dan juist op gaan controleren.

Als ik $Xml->$item->$title op wil halen krijg ik een foutmelding dat $item niet bestaat. met $Xml->$title krijg ik geen foutmelding maar dan is er geen waarde.

Edit:
Ik ben er al achter wat ik fout deed bij het ophalen van de titel, dit moet het natuurlijk zijn zonder de $. $titel = $Xml->channel->item->title;
Gewijzigd op 21/10/2015 16:19:57 door Ferdi R
 
Marthijn Buijs

Marthijn Buijs

22/10/2015 13:40:13
Quote Anchor link
Ik kan je wel zeggen dat de Content-Type van het xml bestand verkeerd is, en word daarom niet als een xml bestand weergeven.
 
Thomas van den Heuvel

Thomas van den Heuvel

22/10/2015 14:20:45
Quote Anchor link
Probeer het uit te lezen als RSS, zoals je al deed. Als dat niet lukt, was het blijkbaar geen RSS.

Vaak zijn character encoderingen een ramp in RSS (komen niet overeen met wat ze claimen te zijn).

Daarnaast, gebruik cURL in plaats van file_get_contents(). Het komt geregeld voor dat je een of meer keer wordt geredirect voordat het uiteindelijke RSS-bestand geserveerd wordt.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.