Visualizzazione risultati 1 fino 17 di 17

Discussione: Problemi con JSON

  1. #1
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

    Exclamation Problemi con JSON

    Salve, premetto che non ne capisco assolutamente niente di niente e mi scuso.
    Sono gestore di un sito Altervista che fa rilevazioni meteorologiche come molti altri presenti in Italia e da ieri abbiamo tutti lo stesso problema, ovvero compare una frase: "Error: no forecast data was found in JSON from api.weather.gov." nella home page e soprattutto nella pagina dedicata alle previsioni del tempo che appunto non compaiono più.

    Abbiamo appurato che non è un problema del servizio di previsione meteo (Weather Underground), nè del software che utilizziamo per gestire i dati meteo (MeteoBridge, ecc...) nè del template grafico che ogni sito preferisce (Saratoga, Meteotemplate, ecc...), ma è un problema di ALTERVISTA, a me/noi sconosciuto.

    Chi ospita il proprio sito meteo su domini diversi da ALTERVISTA non ha questo problema.
    Ecco un esempio:

    1) sito con problema: https://meteoms.altervista.org/wxforecast.php
    2) sito senza problema: https://www.meteotaranto.org/wxforecast.php

    Entrambi i siti hanno lo stesso template, lo stesso software gestionale ma il primo è su ALTERVISTA, il secondo no.

    QUINDI: qual è il problema che fino a 2 giorni fa non c'era e che per anni non c'è mai stato?

    Grazie a chi mi potrà dare delle idee.

  2. #2
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Buongiorno, confermo il problema. E ci dovrebbe essere anche un problema analogo se si ha la pagina wxglobal.php, con la mappa internazionale delle stazioni affiliate.
    Anche io ho notato che solo i siti su altervista soffrono di questo problema. Non so cosa sia cambiato.
    Per le previsioni, dovrei aver temporaneamente risolto con questa modifica al file WC-forecast.php:

    Codice:
      //$i = strpos($html,"\r\n\r\n");
      $i = strpos($html,"{");
      $headers = substr($html,0,$i-1);
      //$content = substr($html,$i+4);
      $content = substr($html,$i);
    In pratica, lo script non rileva correttamente l'header, poichè cerca la sequenza di caratteri "\r\n\r\n" che fa salvare l'header nel modo sbagliato, producendo un errore. Se la si sostituisce con "{" (parentesi graffa), questo sembra risolvere il problema. Bisogna poi anche correggere l'indice per poter estrarre il content, che non è più $i+4 ma solo $i.

    Spero possa risolvere, anche se penso sia una soluzione temporanea; se esiste una soluzione migliore, questa sarà sempre ben accetta, anche perchè quando si testa lo script con check-fetch-times.php si ottiene l'errore

    Codice HTML:
    --checking WU/TWC Forecast for Lat/Long --
    Using first entry in Settings.php $SITE['WCforecasts'] for test.
    WC-forecast test bypassed .. $SITE['WCAPIkey'] or $SITE['WCforecasts'] or $SITE['WCunits'] not configured.
    nonostante quei campi siano correttamente configurati.

    Saluti

    Andrea IV3ONZ

    https://www.iv3onz.altervista.org/wxforecast.php

  3. #3
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

    Predefinito

    Ah ecco, vedi... piano piano ci accorgiamo tutti.

    Scusa la mia TOTALE ignoranza: quali sono i files che devo modificare?
    WC-FORECAST.php e ?

    GRAZIE!!!

  4. #4
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Solo WC-forecast.php. Devi cambiare il contenuto di due righe. Ho commentato le righe originali e sotto le ho riscritte corrette.
    Ciao!

  5. #5
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

    Predefinito

    Appena fatto ma non mi cambia nulla... Non va...

  6. #6
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

  7. #7
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Occhio alla sintassi. Prova anche a commentare la linea "return;":

    Codice:
    // All finished with parsing, now prepare to print
    
    if(count($WCforecasticons) < 1) {
    	print "Error: no forecast data was found in JSON from api.weather.gov\n";
    //	return;
    }
    Si trova circa alla riga 600 di WC-forecast.php.
    Questo codice è quello che scrive l'errore, solo che a me anche se non lo commento funziona lo stesso. Potrebbe anche essere che la vecchia pagina sia rimasta nella cache del browser, prova ad eliminare la cache e la cronologia.

    Spero funzioni. Ciao!

  8. #8
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    C'è uno che ha trovato una soluzione simile qui:

    https://www.wxforum.net/index.php?to...7756#msg487756

    Ha trovato pure lui il problema alla parentesi graffa.

  9. #9
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

    Predefinito

    Non va ma vedo una scritta diversa con scritto FORCE UPDATE che se premo non succede nulla...

  10. #10
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Non vorrei allora sia un problema di PHP, io ho la versione 7.3
    Ma qui non vorrei crearti problemi, perchè se cambi versione potrebbe non funzionarti qualcos'altro, e li non saprei come aiutarti.
    Qui dovrebbe intervenire un tecnico di altervista, che sicuramente sa cosa hanno combinato da l'altro ieri in poi. Almeno avvisassero.
    Mi dispiace

    Ciao
    Andrea IV3ONZ

  11. #11
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

    Predefinito

    No ora funziona!!!
    Avevo modificato le righe poco sopra che sono uguali in quel file e non mi ero accorto che c'erano uguali pure sotto e ora va alla grande!!!
    GRAZIE MILLE!!!

  12. #12
    senameteo non è connesso Neofita
    Data registrazione
    23-11-2020
    Messaggi
    8

    Predefinito

    Lascio come mi hai detto tu o bisogna mettere sto codice qui:

    https://www.wxforum.net/index.php?PH...7764#msg487764

  13. #13
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Citazione Originalmente inviato da senameteo Visualizza messaggio
    Lascio come mi hai detto tu o bisogna mettere sto codice qui:

    https://www.wxforum.net/index.php?PH...7764#msg487764
    Per me lascia come ho fatto io. Poi, se ci saranno aggiornamenti, magari ci risentiamo.

    Ciao!

  14. #14
    Data registrazione
    04-10-2020
    Messaggi
    8

    Predefinito

    Ciao!
    Mi aggrego alla discussione ringraziandovi per il problema che grazie a voi ho risolto ma ora ce n'è un altro
    Non vengono più caricati i metar report indicandoli come obsoleti. Non vorrei che ci sia anche lì qualcosa da modificare. Vi ringrazio

  15. #15
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Buongiorno a tutti, probabilmente non è stato risolto ancora il problema, anche se torno a vedere correttamente le stazioni sulla mappa nel form wxglobal.php.
    Per quanto riguarda MeteoBorgovillaBarletta, potrebbe essere che, momentaneamente, i metar che hai inserito nella tua pagina non siano ora aggiornati, ne ho anche io alcuni così nella mia pagina.
    Altrimenti, potrebbe essere che dovresti scaricarti l'ultima versione della pagina wxmetar.php. Tempo fa, ma parlo di alcuni anni fa, c'era questo problema e Saratoga lo ha risolto con un aggiornamento. Ma al momento non ne vedo.
    Spero di esservi stato utile,
    Ciao!!

    Andrea IV3ONZ
    Ultima modifica di iv3onz : 11-04-2025 alle ore 09.01.47

  16. #16
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

  17. #17
    iv3onz non è connesso Neofita
    Data registrazione
    02-03-2010
    Messaggi
    11

    Predefinito

    Forse ho capito dove sta il problema. In wxmetar.php c'è una variabile da modificare:

    Codice:
    $maxAge = 90*60; // max age for metar in seconds = 90 minutes
    Potrebbe essere che sia impostata su un tempo troppo basso, tipo inferiore a 30 minuti. Tieni conto che, i metar, potrebbero comparire aggiornati anche un'ora e mezza dopo.
    Per verificare se i dati metar ti arrivano aggiornati, confrontali con quelli sul sito dell'Aeronautica Militare:

    https://www.meteoam.it/it/metar-taf

    Ciao!

    Andrea IV3ONZ

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •