Algemeen forum ontrent de ontwikkelng, design en hosting van weergerelateerde websites (dit laatste om een beetje on topic te blijven)
Door stephanvanloon
#62489
Sorry dat ik het zeg, maar dat met het pad dat laten we maar achterwege, ik denk dat je me niet helemaal begrijpt. Het probleem is dat het script gewoon niet werkt. Als ik het pad invoer zoals jij opgeeft bestaat de pagina niet meer, als ik het deed op mijn manier wel. Het script gedeelte wil alleen niet laden en vandaar dat ik met de vraag op hwa kom omdat jij vertelde dat hij rechtstreeks zou moeten werken na downloaden en uploaden, helaas is dat niet het geval.

http://www.ohln.nl/yr/yrtest2.php
Door pdw112
#62494
het script werkt nu prima dus even in de regel die je voor de foutmeldingen hebt toegevoegd de 1 veranderen naar een 0.

Dan zijn alle foutmeldingen weg.
Door wvdkuil
#62495
stephanvanloon schrijft:
En inmiddels zie ik dat het script enigzins lijkt te werken. Er komen wel honderden foutmeldingen, maar helemaal onderaan wordt alsnog de weersverwachting geladen.

Wim, heb jij enig idee waar dat door veroorzaakt wordt?

http://www.ohln.nl/yr/yrtest.php?|52.38 ... erlands|NL


Er zijn zeer veel "Notice:" boodschappen. Die zijn alleen voor de ontwikkelaar van belang.

Dat ze er zijn heeft twee redenen:
1. "Notice" wordt met de "normale" instellingen niet door Apache aan de gebruiker (dus aan ons) getoond.
2. Maar dat het er zoveel zijn elke keer ligt ook aan het volgende punt.

Er is 1 essentiele foutboodschap die dringend opgelost moet worden:

Warning: file_put_contents(/var/www/vhosts/ukkostutkat.fi/httpdocs/cache/7cc59701c67e75f304da744e182141bc.xml): failed to open stream: No such file or directory inE:\\HostingSpaces\\Vanloon\\ohln.nl\\wwwroot\\yr\\scripts\\yr_xmlII.php on line 149

In de instellingen van yr/scripts/yr_xmlII.php regel 34 (34 in de download versie) staat de cache nog niet ingesteld.
Code: Selecteer alles
$cachefolder = "/var/www/vhosts/ukkostutkat.fi/httpdocs/cache/";

Die staat nu nog op de "prive" cache van Henkka zoals je ziet in de foutboodschap.

Waarom moet dit aangepast worden?
Er vindt op de servers waarvan de verwachtingen worden geladen een controle plaats of steeds in korte tijde dezelfde data wordt opgevraagd.

De API die de ontwikkelaar, en dus automatisch de gebruiker van een script, aanvaardt hebben, verplichten een aantal zaken:
1. de verwijzing naar YrNo en of MetNo
2. Het cachen van de verwachtingen om de servers van YrNo te ontlasten

Als de verwachtingen niet in een cache worden opgeslagen dan loopt men de kans vroeg of laat op de black-list te komen en dan wordt de data niet meer aan de aanvragende webserver geleverd.

===
Als de cache goed werkt moet er nog iets aangepast worden om van de "Notice:" boodschappen af te komen:

Regel 3 in yr/scripts/yr_xmlII.php wijzigen van
Code: Selecteer alles
      ini_set('display_errors', '1');

in commentaar door op de eerste positie het commentaar teken te zetten
Code: Selecteer alles
# ini_set('display_errors', '1');

Als er dan iets vreemds is kun je heel makkelijk de foutboodschappen weer tevoorschijn laten komen.

Als je die zelfde regel als extra regel in yr/yrtest.php nog hebt staan voor de include, moet je die ook op commentaar zetten.

Succes, Wim
Door wvdkuil
#70113
tjabine schrijft:
Helaas is bij mij de verwachting om zeep geholpen door PHP 7.1
Met versie 5.3 werkt het wel.
http://www.weerheerhugowaard.nl/meerdaagse-weersverwachting-voor-heerhugowaard-en-omgeving
Wat moet ik veranderen om het weer werkbaar te maken met 7.1?

Gr Ron.
Deze "boodschappen" (bijna allemaal notices, geen errors, geen fatal) zaten er altijd al grotendeels in. Het script werkt nog steeds als je helemaal naar benden scrollt tot onder de boodschappen.

Omdat blijkbaar je nieuwe versie van php in de php.ini de boodschappen allemaal aan zet, moet je in het script op de eerste regel na
Controleer wat er op regel 3 van yr/yr_xmill.php staat
Code: Selecteer alles
ini_set('display_errors', '0');


Succes, Wim
Door wvdkuil
#70121
tjabine schrijft:
Hoi Wim,

Code: Selecteer alles
ini_set('display_errors', '0');
was de oplossing.
Bedankt.

Gr Ron.
Mooi, ze worden niet meer afgebeeld.
Maar ze komen nog wel in de logfile.

Als je die regel aanpast naar
Code: Selecteer alles
ini_set('display_errors', '0');   error_reporting(0);
dan zouden ze ook niet meer in de logfile komen.

Blijkbaar is bij je huidige PHP versie de error handling veel hoger gezet dan vroeger.

Normaal is het:
Alleen als je aan het testen bent zet je zelf de error reporting aan in een script.
En als je een productie website hebt moet error reporting en display door de provider uitgezet zijn.

Wellicht eens aan je provider vragen waar je dat kunt instellen,

Wim
  • 1
  • 16
  • 17
  • 18
  • 19
  • 20