Pagina 1 van 1

Tabel met actueel weer van KNMI meetstations is er ineens mee gestopt.

Geplaatst: 26 nov 2020, 20:45
door WeerstationGraveNL
Goedenavond mensen,

Ik maak al jaren gebruik van de xml-feed van buienradar met een oud php-script.
Dat heeft altijd foutloos gewerkt, maar van de ene op de andere week is die er mee gestopt.
Ik heb buienradar gevraagd of zij wellicht iets aan de xml van xml.buienradarPUNTnl hebben veranderd, maar dat likt niet het geval.
Het vreemde is dat op alle andere websites, die eenzelfde script gebruiken, de tabel gewoon zichtbaar is.
Zou dit iets met de PHP versie te maken kunnen hebben?
Ik gebruik nu PHP versie 7.4, maar als ik terugschakel naar de eerdere versies maakt geen verschili.
(overigens geen idee hoe lang het duurt voordat een nieuw ingestelde versie ook daadwerkelijk actief is op de webiste, dus misschien ben ik niet geduldig genoeg).
Het heeft 2 dagen geleden klaarblijkelijk heel even gewerkt op versie 7.4, maar de dag erna was de tabel weer onzichtbaar.

Zou iemand trouwens zijn werkende php-code kunnen posten hier, zodat ik die kan proberen?
Alvast bedankt voor jullie reactie en/of code.

PS: zie ook de betreffende pagina:
https://www.bommeltje.nl/website/weerst ... nederland/

Re: Tabel met actueel weer van KNMI meetstations is er ineens mee gestopt.

Geplaatst: 27 nov 2020, 09:54
door wvdkuil
Het omschakelen naar een andere PHP versie is bij (de meeste ) providers direct.

De xml ziet er normaal uit en wordt normaal zonder problemen opgehaald.

De pagina met het probleem is eigenlijk https://www.bommeltje.nl/weer2/weer-meetstations.php
Maar het script weer-meetstations.php kunnen we niet inkijken, geen sce=view

Ik heb of dit forum gezocht en twee topics gevonden waarin dergelijke scripts worden besproken
gegevens meetstations KNMI weergeven
xml buienrader includen

Die scripts maken gebruik van "<?echo" (niet meer gelding in PHP7) in plaats van "<?php echo"
Als je die schrijfwijzes aanpast zou het script moeten werken.
Zo niet toch even uw huidige script posten hier op het forum:
Maak een kopie van het script en hernoem het als weer-meetstations.txt
Dan hier als bijlage op het forum plaatsen dan kunnen we kijken wat er mis gaat.

Wim

Re: Tabel met actueel weer van KNMI meetstations is er ineens mee gestopt.

Geplaatst: 27 nov 2020, 11:34
door WeerstationGraveNL
Goedemorgen Wim,

De code is deze:
Code: Selecteer alles
<?php 
$url = "https://xml.buienradar.nl"; 
$xml = simplexml_load_file($url); 
foreach($xml->weergegevens->actueel_weer->weerstations->weerstation as $weer) 
{ 
$string = $weer->stationnaam;
    echo "<tr bgcolor=#D5E1F0><td><b>&nbsp;";
$patterns[0] = '/Meetstation /';
$replacements[0] = '';
echo preg_replace($patterns, $replacements, $string);"</b></td>";
    echo "<td><center>".$weer->temperatuurGC."</center></td>"; 
    echo "<td><center>".$weer->luchtvochtigheid."</center></td>"; 
	echo "<td><center>".$weer->zichtmeters."</center></td>";
    echo "<td><center>".$weer->windrichting." (".$weer->windsnelheidBF.")</center></td>"; 
    echo "<td><center><img src='".$weer->icoonactueel."' height=30 width=37></center>"; 
	echo "<td><center>".$weer->luchtdruk."</center></td></tr>";
} 
?>
Overigens hoor ik van mijn hoster dat zij een "Access denied" krijgen.
Blijkbaar heeft Buienradar mij geblocked (want ik geloof niet dat er een API of iets dergelijks nodig is om dit script te draaien!?

Re: Tabel met actueel weer van KNMI meetstations is er ineens mee gestopt.

Geplaatst: 28 nov 2020, 17:01
door wvdkuil
WeerstationGraveNL schreef: 27 nov 2020, 11:34 Goedemorgen Wim,
De code is deze:
Code: Selecteer alles
<?php 
$url = "https://xml.buienradar.nl"; 
$xml = simplexml_load_file($url); 
foreach($xml->weergegevens->actueel_weer->weerstations->weerstation as $weer) 
{ 
$string = $weer->stationnaam;
    echo "<tr bgcolor=#D5E1F0><td><b>&nbsp;";
$patterns[0] = '/Meetstation /';
$replacements[0] = '';
echo preg_replace($patterns, $replacements, $string);"</b></td>";
    echo "<td><center>".$weer->temperatuurGC."</center></td>"; 
    echo "<td><center>".$weer->luchtvochtigheid."</center></td>"; 
	echo "<td><center>".$weer->zichtmeters."</center></td>";
    echo "<td><center>".$weer->windrichting." (".$weer->windsnelheidBF.")</center></td>"; 
    echo "<td><center><img src='".$weer->icoonactueel."' height=30 width=37></center>"; 
	echo "<td><center>".$weer->luchtdruk."</center></td></tr>";
} 
?>
Overigens hoor ik van mijn hoster dat zij een "Access denied" krijgen.
Blijkbaar heeft Buienradar mij geblocked (want ik geloof niet dat er een API of iets dergelijks nodig is om dit script te draaien!?
Wel een heel klein stukje uit de pagina https://www.bommeltje.nl/weer2/weer-meetstations.php
In de code die u geeft zit zelfs geen "<table "
Maar goed, deze incomplete code werkt zonder probleem, zie bijgevoegd plaatje, onder PHP 7.4.2

Dus als de rest van de pagina ook goed werkt => ja de tabel definitie en teksten werken goed, inclusief wat na de include moet komen.
Als de include het juiste script laadt,
en als in de php ini niet iets geblokkeerd is
dan zal inderdaad een blokkade van KNMI zijn.

Ben benieuwd wat ze als verklaring geven vanuit KNMI.
En of ze de complete 'hoster" of alleen uw website geblokkeerd hebben.

Succes,
Wim

Re: Tabel met actueel weer van KNMI meetstations is er ineens mee gestopt.

Geplaatst: 28 nov 2020, 17:47
door WeerstationGraveNL
Dankjewel Wim, als het een blokkade is (en daar lijkt dan toch sterk op), dan moet die door Buienradar ingesteld zijn, maar die geven geen reactie op mijn berichten.
Wel interessant dat je zegt dat het misschien de gehele hoster kan zijn (want je betrekt zoiets al gauw op je eigen website).
Ik ga dat in ieder geval melden bij hen.
Bedankt voor het nakijken Wim 👍