[PHP] Pagina html che legge file txt

Stato
Chiusa ad ulteriori risposte.
da dilettante qual sono, ho riscritto il codice soprastante sperando sia più comprensibile a chi come me conosce poco
PHP:
<?php
$url          = 'http://www.stazionemeteonunziata.it/meteo/realtime.txt';
$dati_remoti  = str_getcsv(file_get_contents($url)," ");

$dati_legenda = ["data"      ,"orario"   ,"temperatura","valore3"  ,"valore4"  ,"valore5"  ,"valore6"  ,"valore7"  ,"valore8"  ,"valore9"
                 ,"valore10" ,"valore11" ,"valore12"   ,"valore13" ,"valore14" ,"valore15" ,"valore16" ,"valore17" ,"valore18" ,"valore19"
                 ,"valore20" ,"valore21" ,"valore22"   ,"valore23" ,"valore24" ,"valore25" ,"valore26" ,"valore27" ,"valore28" ,"valore29"
                 ,"valore30" ,"valore31" ,"valore32"   ,"valore33" ,"valore34" ,"valore35" ,"valore36" ,"valore37" ,"valore38" ,"valore39"
                 ,"valore40" ,"valore41" ,"valore42"   ,"valore43" ,"valore44" ,"valore45" ,"valore46" ,"valore47" ,"valore48" ,"valore49"
                 ,"valore50" ,"valore51" ,"valore52"   ,"valore53" ,"valore54" ,"valore55" ,"valore56" ,"valore57" ,"valore58" ,"valore59"
                 ,"valore60" ,"valore61" ,"valore62"   ,"valore63" ,"valore64" ,"valore65" ,"valore66" ,"valore67" ,"valore68" ,"valore69"
                 ,"valore70" ,"valore71" ,"valore72"   ,"valore73" ,"valore74" ,"valore75" ,"valore76" ,"valore77" ,"valore78" ,"valore79"];

$dati_um       = [""      ,""     ,"°C"    ,"um3"  ,"um4"  ,"um5"  ,"um6"  ,"um7"  ,"um8"  ,"um9"
                 ,"um10" ,"um11" ,"um12"   ,"um13" ,"um14" ,"um15" ,"um16" ,"um17" ,"um18" ,"um19"
                 ,"um20" ,"um21" ,"um22"   ,"um23" ,"um24" ,"um25" ,"um26" ,"um27" ,"um28" ,"um29"
                 ,"um30" ,"um31" ,"um32"   ,"um33" ,"um34" ,"um35" ,"um36" ,"um37" ,"um38" ,"um39"
                 ,"um40" ,"um41" ,"um42"   ,"um43" ,"um44" ,"um45" ,"um46" ,"um47" ,"um48" ,"um49"
                 ,"um50" ,"um51" ,"um52"   ,"um53" ,"um54" ,"um55" ,"um56" ,"um57" ,"um58" ,"um59"
                 ,"um60" ,"um61" ,"um62"   ,"um63" ,"um64" ,"um65" ,"um66" ,"um67" ,"um68" ,"um69"
                 ,"um70" ,"um71" ,"um72"   ,"um73" ,"um74" ,"um75" ,"um76" ,"um77" ,"um78" ,"um79"];

//print_r($dati_remoti);  //stampa i dati recuperati da remoto, solo per controllo

echo "<table>";
foreach($dati_remoti as $k=>$v) {
   $legenda = ( isset($dati_legenda[$k]) ? $dati_legenda[$k] : "no legenda" ); // associa la legenda
   $um      = ( isset($dati_um[$k])      ? $dati_um[$k]      : "no um" );      // associa la unita di misura

   echo "<tr>"."<td>".$legenda."</td>"."<td>".$v."</td>"."<td>".$um."</td>"."</tr>";
}
echo "</table>"."<br />"."<br />";

echo "per visualizzare un singolo valore, esempio la temperatura (il primo elemento della tabella é zero, la temperatura é 2";
echo "<br />"."<br />";
echo $dati_legenda[2]." ".$dati_remoti[2]." ".$dati_um[2];
echo "<br />"."<br />";
?>
 
Ultima modifica:
eccomi http://www.stazionemeteonunziata.it/prova1.php ci siamo, grazie a te :) senti qualche chiarimento, quando realizzerò la pagina, con l'aiuto dell'html, tabelle, celle, ecc. le parentesi [ ] si possono eliminare o restano ?

ora vorrei capire una cosa, io devo prendere ogni singolo valore, e inserirlo in una singola cella di una tabella, dove poi scriverò ad esempio Temperatura xx.x C° dove xx.x sarà il valore da "pescare dal file txt.
Nel codice che hai creato, qual'è la stringa che devo selezionare ? non so se sono riuscito a spiegarmi :rolleyes:

in pratica io devo fare una cosa simile http://www.stazionemeteonunziata.it/varie/datimeteo.bmp
 
Eccomi, sono stato impegnato a installare la webcam sul tetto, da associare alla stazione meteo, non so come ringraziarvi, siete stati spettacolari.
Adesso appena ho un pò di tempo libero e mente serena, vedo di realizzare la pagina che mi era messo in testa, GRAZIE alla vostra preziosissima bravura e gentilezza ! Grazie ancora :)
 
Salve, rieccomi, allora ho ormai metabolizzato come richiamare i vari dati, singolarmente, mo ho un problemino ;) praticamente, avevo creato (per prova) una tabella con tre celle ed in ognuna di loro avevo inserito un valore, prima temperatura, seconda umidità, terza cella dew point.
Ho fatto cosi, in ogni cella ho inserito
PHP:
echo "<br />"."<br />";
echo $dati_legenda[4]." ".$dati_remoti[4]." ".$dati_um[4];
echo "<br />"."<br />";

ovviamente cambiando il solo valore 4 ecc.ecc.
ma mi dava errore, in pratica all'interno di ogni cella, mi compariva il codice che ho scritto sopra !
Aggiungo che la tabella l'ho inserita prima della chiusura della pagina php, cioè prima di ?> che chiude tutto il codice presente nella pagina !
Dove sbaglio ? :(
 
le 3 righe di codice che hai postato sono giuste,
purtroppo non hai postato il tuo codice ne un'immagine con il risultato che ottieni
é una bella gara trovare dove sia l'errore,
in prima battuta penso che hai usato come nome del file qualcosa tipo "index.html" invece che "index.php"
se tu avessi usato l'estensione "html" il contenuto non viene interpretato da php,
esempio, il codice che ti ho postato in precedenza, eseguito da un file con estensione "html" produce,
upload_2019-1-4_21-3-8.png


se persiste il problema, posta qualche notizia in più ….

ps, per ottenere un buon allineamento considera la possibilità di usare una tabella "html" per la pubblicazione dei dati, vedi
echo "<table>";
e successive righe
 
questo è il link della pagina http://www.stazionemeteonunziata.it/provamia.php

questo è l'errore : Parse error: syntax error, unexpected '<', expecting end of file in /web/htdocs/www.stazionemeteonunziata.it/home/provamia.php on line 48

ecco il codice che ho modificato (ho utilizzato la stessa pagina precedente, come base) :
PHP:
<?php
$url          = 'http://www.stazionemeteonunziata.it/meteo/realtime.txt';
$dati_remoti  = str_getcsv(file_get_contents($url)," ");

$dati_legenda = ["data"      ,"orario"   ,"Temperatura","Umidita'"  ,"Dew Point"  ,"valore5"  ,"valore6"  ,"valore7"  ,"valore8"  ,"valore9"
                 ,"valore10" ,"valore11" ,"valore12"   ,"valore13" ,"valore14" ,"valore15" ,"valore16" ,"valore17" ,"valore18" ,"valore19"
                 ,"valore20" ,"valore21" ,"valore22"   ,"valore23" ,"valore24" ,"valore25" ,"valore26" ,"valore27" ,"valore28" ,"valore29"
                 ,"valore30" ,"valore31" ,"valore32"   ,"valore33" ,"valore34" ,"valore35" ,"valore36" ,"valore37" ,"valore38" ,"valore39"
                 ,"valore40" ,"valore41" ,"valore42"   ,"valore43" ,"valore44" ,"valore45" ,"valore46" ,"valore47" ,"valore48" ,"valore49"
                 ,"valore50" ,"valore51" ,"valore52"   ,"valore53" ,"valore54" ,"valore55" ,"valore56" ,"valore57" ,"valore58" ,"valore59"
                 ,"valore60" ,"valore61" ,"valore62"   ,"valore63" ,"valore64" ,"valore65" ,"valore66" ,"valore67" ,"valore68" ,"valore69"
                 ,"valore70" ,"valore71" ,"valore72"   ,"valore73" ,"valore74" ,"valore75" ,"valore76" ,"valore77" ,"valore78" ,"valore79"];

$dati_um       = [""      ,""     ,"C"    ,"%"  ,"C"  ,"um5"  ,"um6"  ,"um7"  ,"um8"  ,"um9"
                 ,"um10" ,"um11" ,"um12"   ,"um13" ,"um14" ,"um15" ,"um16" ,"um17" ,"um18" ,"um19"
                 ,"um20" ,"um21" ,"um22"   ,"um23" ,"um24" ,"um25" ,"um26" ,"um27" ,"um28" ,"um29"
                 ,"um30" ,"um31" ,"um32"   ,"um33" ,"um34" ,"um35" ,"um36" ,"um37" ,"um38" ,"um39"
                 ,"um40" ,"um41" ,"um42"   ,"um43" ,"um44" ,"um45" ,"um46" ,"um47" ,"um48" ,"um49"
                 ,"um50" ,"um51" ,"um52"   ,"um53" ,"um54" ,"um55" ,"um56" ,"um57" ,"um58" ,"um59"
                 ,"um60" ,"um61" ,"um62"   ,"um63" ,"um64" ,"um65" ,"um66" ,"um67" ,"um68" ,"um69"
                 ,"um70" ,"um71" ,"um72"   ,"um73" ,"um74" ,"um75" ,"um76" ,"um77" ,"um78" ,"um79"];

//print_r($dati_remoti);  //stampa i dati recuperati da remoto, solo per controllo

echo "<table>";
foreach($dati_remoti as $k=>$v) {
   $legenda = ( isset($dati_legenda[$k]) ? $dati_legenda[$k] : "no legenda" ); // associa la legenda
   $um      = ( isset($dati_um[$k])      ? $dati_um[$k]      : "no um" );      // associa la unita di misura

   echo "<tr>"."<td>".$legenda."</td>"."<td>".$v."</td>"."<td>".$um."</td>"."</tr>";
}
echo "</table>"."<br />"."<br />";

echo "per visualizzare un singolo valore, esempio la temperatura (il primo elemento della tabella é zero, la temperatura é 2";
echo "<br />"."<br />";
echo $dati_legenda[2]." ".$dati_remoti[2]." ".$dati_um[2];
echo "<br />"."<br />";

echo "<br />"."<br />";
echo $dati_legenda[3]." ".$dati_remoti[3]." ".$dati_um[3];
echo "<br />"."<br />";

echo "<br />"."<br />";
echo $dati_legenda[4]." ".$dati_remoti[4]." ".$dati_um[4];
echo "<br />"."<br />";


<table border="1" width="100%">
    <tr>
        <td>&nbsp;echo "<br />"."<br />";
echo $dati_legenda[2]." ".$dati_remoti[2]." ".$dati_um[2];
echo "<br />"."<br />";</td>
        <td>&nbsp;echo "<br />"."<br />";
echo $dati_legenda[3]." ".$dati_remoti[3]." ".$dati_um[3];
echo "<br />"."<br />";
</td>
        <td>&nbsp;echo "<br />"."<br />";
echo $dati_legenda[4]." ".$dati_remoti[4]." ".$dati_um[4];
echo "<br />"."<br />";
</td>
    </tr>
</table>


?>
 
devi fare attenzione,
<?php
QUI SI DEVE SCRIVERE CODICE PHP NON HTML
( html é gestito con istruzioni php )
?>
QUI SI PUO' SCRIVERE CODICE HTML MA NON PHP
<?php
QUI SI DEVE SCRIVERE CODICE PHP NON HTML
( html é gestito con istruzioni php )
?>

ti faccio 4 esempi,
PHP:
<?php
$url          = 'http://www.stazionemeteonunziata.it/meteo/realtime.txt';
$dati_remoti  = str_getcsv(file_get_contents($url)," ");

$dati_legenda = ["data"      ,"orario"   ,"Temperatura","Umidita'"  ,"Dew Point"  ,"valore5"  ,"valore6"  ,"valore7"  ,"valore8"  ,"valore9"
                 ,"valore10" ,"valore11" ,"valore12"   ,"valore13" ,"valore14" ,"valore15" ,"valore16" ,"valore17" ,"valore18" ,"valore19"
                 ,"valore20" ,"valore21" ,"valore22"   ,"valore23" ,"valore24" ,"valore25" ,"valore26" ,"valore27" ,"valore28" ,"valore29"
                 ,"valore30" ,"valore31" ,"valore32"   ,"valore33" ,"valore34" ,"valore35" ,"valore36" ,"valore37" ,"valore38" ,"valore39"
                 ,"valore40" ,"valore41" ,"valore42"   ,"valore43" ,"valore44" ,"valore45" ,"valore46" ,"valore47" ,"valore48" ,"valore49"
                 ,"valore50" ,"valore51" ,"valore52"   ,"valore53" ,"valore54" ,"valore55" ,"valore56" ,"valore57" ,"valore58" ,"valore59"
                 ,"valore60" ,"valore61" ,"valore62"   ,"valore63" ,"valore64" ,"valore65" ,"valore66" ,"valore67" ,"valore68" ,"valore69"
                 ,"valore70" ,"valore71" ,"valore72"   ,"valore73" ,"valore74" ,"valore75" ,"valore76" ,"valore77" ,"valore78" ,"valore79"];

$dati_um       = [""      ,""     ,"C"    ,"%"  ,"C"  ,"um5"  ,"um6"  ,"um7"  ,"um8"  ,"um9"
                 ,"um10" ,"um11" ,"um12"   ,"um13" ,"um14" ,"um15" ,"um16" ,"um17" ,"um18" ,"um19"
                 ,"um20" ,"um21" ,"um22"   ,"um23" ,"um24" ,"um25" ,"um26" ,"um27" ,"um28" ,"um29"
                 ,"um30" ,"um31" ,"um32"   ,"um33" ,"um34" ,"um35" ,"um36" ,"um37" ,"um38" ,"um39"
                 ,"um40" ,"um41" ,"um42"   ,"um43" ,"um44" ,"um45" ,"um46" ,"um47" ,"um48" ,"um49"
                 ,"um50" ,"um51" ,"um52"   ,"um53" ,"um54" ,"um55" ,"um56" ,"um57" ,"um58" ,"um59"
                 ,"um60" ,"um61" ,"um62"   ,"um63" ,"um64" ,"um65" ,"um66" ,"um67" ,"um68" ,"um69"
                 ,"um70" ,"um71" ,"um72"   ,"um73" ,"um74" ,"um75" ,"um76" ,"um77" ,"um78" ,"um79"];


echo "<h3>ESEMPIO 1 senza tabella</h3>";
echo $dati_legenda[0]." ".$dati_remoti[0]." ".$dati_um[0]; echo "<br />"."<br />";
echo $dati_legenda[1]." ".$dati_remoti[1]." ".$dati_um[1]; echo "<br />"."<br />";
echo $dati_legenda[2]." ".$dati_remoti[2]." ".$dati_um[2]; echo "<br />"."<br />";
echo $dati_legenda[3]." ".$dati_remoti[3]." ".$dati_um[3]; echo "<br />"."<br />";
echo $dati_legenda[4]." ".$dati_remoti[4]." ".$dati_um[4]; echo "<br />"."<br />";
echo "</table>"."<br />"."<br />";


echo "<h3>ESEMPIO 2 con tabella righe non ordinate</h3>";
echo "<table border='1' width='100%'>";
echo "<tr>"."<td>".$dati_legenda[0]."</td>"."<td>".$dati_remoti[0]."</td>"."<td>".$dati_um[0]."</td>"."</tr>";
echo "<tr>"."<td>".$dati_legenda[1]."</td>"."<td>".$dati_remoti[1]."</td>"."<td>".$dati_um[1]."</td>"."</tr>";
echo "<tr>"."<td>".$dati_legenda[4]."</td>"."<td>".$dati_remoti[4]."</td>"."<td>".$dati_um[4]."</td>"."</tr>";
echo "<tr>"."<td>".$dati_legenda[3]."</td>"."<td>".$dati_remoti[3]."</td>"."<td>".$dati_um[3]."</td>"."</tr>";
echo "<tr>"."<td>".$dati_legenda[2]."</td>"."<td>".$dati_remoti[2]."</td>"."<td>".$dati_um[2]."</td>"."</tr>";
echo "</table>"."<br />"."<br />";


echo "<h3>ESEMPIO 3 con tabella righe ordinate</h3>";
echo "<table border='1' width='100%'>";
for ($i=0; $i<5; $i++){
    echo "<tr>"."<td>".$dati_legenda[$i]."</td>"."<td>".$dati_remoti[$i]."</td>"."<td>".$dati_um[$i]."</td>"."</tr>";
}
echo "</table>"."<br />"."<br />";

?>

<h3>ESEMPIO 4 usando codice html e php</h3>
<table border='1' width='100%'>
<?php
for ($i=0; $i<5; $i++){
?>
  <tr>
    <td>
      <?php echo $dati_legenda[$i]; ?>
    </td>
    <td>
      <?php echo $dati_remoti[$i]; ?>
    </td>
    <td>
      <?php echo $dati_um[$i]; ?>
    </td>
  </tr>
<?php
}
?>
</table><br /><br />

gli esempi 3 e 4 sono "identici" ma scritti in modo diverso
 
Ultima modifica:
scusa se mi "attacco" a questa discussione, ma puoi spiegare i componenti della tua stazione,
potrei "arrangiarne anche una mia ….
da abbinare al mio impiantino fotovoltaico
lasciami pubblicare anche la resa di 8 anni di funzionamento
con un prelievo medio dalla rete di ( solo ) 300 kWh/anno (2404 / 8)
upload_2019-1-6_0-15-16.png
 
scusa se mi "attacco" a questa discussione, ma puoi spiegare i componenti della tua stazione,
potrei "arrangiarne anche una mia ….
da abbinare al mio impiantino fotovoltaico
lasciami pubblicare anche la resa di 8 anni di funzionamento
con un prelievo medio dalla rete di ( solo ) 300 kWh/anno (2404 / 8)
Vedi l'allegato 5978

Ciao, se intendi il modello della stazione è una Davis Vantage Vue
 
si, ho realizzato un insieme di grafici per avere una "overview" del sistema fotovoltaico,
tra questi é presente anche la previsione meteo a 48 ore
ho utilizzato il sw Highcharts realizzato e distribuito da HighSoft senza costo per un uso personale / amatoriale
https://www.highcharts.com/blog/about/
 
Stato
Chiusa ad ulteriori risposte.

Discussioni simili