Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 21
  1. #11
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Quindi "qualcuno" che richiama la pagina c'è? arduino, giusto?
    Essendo un architettura basata su request-respond hai necessariamente bisogno che qualcuno effettui una richiesta, come il browser (quando navighi) o cron/oper.pian. (automatizzato) o in questo caso arduino.

    Non ho ben capito perchè mettere questa condizione dell'orario: come fai ad esser sicuro che arduino chiami la pagina esattamente alle 11:43 ? e se non è perfettamente sincronizzato con il server?

    Come ti hanno detto se ti aggiornato la piattaforma a php7 non ti funziona più niente, quindi ti conviene passare a mysqli che sintatticamente è simile a mysql (dovrebbe bastare aggiungere la 'i' alle funzioni e passare il link alla connessione al database)

  2. #12
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Il sistema di if dove lo vuoi mettere?

    Calcola che se lo metti in uno script in un file residente sul server, questo non viene eseguito, i file che stanno sul server non fanno niente a meno che qualcuno vada a chiamarli.
    Quindi se per esempio scrivi in un file prova.php
    Codice PHP:
    if ( date('H:i') == '12:00')
    {
        if (
    date('H:i') == '16:31'){
      
    $query "INSERT INTO $tabella10(`timestamp`,`Temperaturamediadeldi`) SELECT`time_stamp`,ROUND(AVG(temperatura),1) FROM $tabella GROUP BY DATE(`time_stamp`)=CURDATE()";
            
    $fetch mysql_fetch_array($query);

    questo codice non sta sempre a controllare l'ora, non fa proprio niente a meno che qualcuno vada all'indirizzo
    www.tuosito.it/prova.php
    e deve andarci esattamete tra le 16:31:00 e le 16:31:59, se ci va alle 16:30:59 oppure alle 16:32:00 nell'if non ci si entra.

    L'unica soluzione è usare cron/operazioni pianificate, strumenti che vanno usati SUL SERVER, non sul tuo PC di casa.

    La soluzione che ti è stata proposta in alternativa a cron/operazioni pianificate da usare sul server è se questo non ti fornisce tale servizio (e penso che non te lo fornisca, ma chiedi al provider per sicurezza), ma dici che il tuo PC non può restare acceso, quindi neanche quella soluzione è fattibile.

    La tua stazione meteo sta sempre accesa? Se così fosse potresti, aggiungere un orologio e far chiamare da questa la pagina con il tuo script per l'inserimento dei dati, tanto di connettivita Wi-Fi è già fornita.

    Se neanche questo è possibile, non ti resta che prendere uno spazio web da un hosting provider che fornisca anche il servizio cron (se devi cambiare, scegli un server linux).

  3. #13
    Utente di HTML.it
    Registrato dal
    Nov 2017
    Messaggi
    15
    Grazie mille ad entrambi, alla fine grazie al consiglio di Alhazred sono riuscito a risolvere il problema, ora sfrutto il modulo RTC collegato al mio arduino, richiamando le varie pagine all'orario da me deciso. Mi resta solamente un piccolo problema con query SQL, in pratica ogni giorno alle 23.59 calcola sia la media del giorno corrente, che del primo giorno che ho iniziato le rilevazioni e me le inserisce nella tabella, avendo quindi 2 row nuove per giorno, anche se nel codice gli specifico di raggruppare i valori solo per il giorno corrente

    Codice PHP:
      $result mysql_query("INSERT INTO `media`(`timestamp`,`Temperaturamediadeldi`) SELECT `time_stamp`, ROUND(AVG(temperatura),1) FROM meteo GROUP BY DATE(`time_stamp`)= CURDATE()"

  4. #14

  5. #15
    Utente di HTML.it
    Registrato dal
    Nov 2017
    Messaggi
    15
    Si ok, ma io gli faccio fare un solo insert e perdipiù per il giorno corrente, non per il primo giorno che ho iniziato a caricare i dati nella mia tabella

  6. #16
    Quote Originariamente inviata da DavideCI Visualizza il messaggio
    Si ok, ma io gli faccio fare un solo insert e perdipiù per il giorno corrente, non per il primo giorno che ho iniziato a caricare i dati nella mia tabella
    ah, se solo capissi cosa hai detto!

  7. #17
    Utente di HTML.it
    Registrato dal
    Nov 2017
    Messaggi
    15
    In pratica ho un problema con la query per il calcolo della media, essa dovrebbe, alla fine di ogni giornata, calcolarmi la media di tutti i campionamenti della temperatura effettuati QUEL GIORNO, e successivamente caricare il valore della media all'interno di un altra tabella che contiene solamente le medie. Il problema è che alla fine della giornata mi carica sia la media del giorno corrente che quella del primo giorno in cui ho iniziato a caricare i dati all'interno della tabella dove ho tutte le campionature della temperatura. Riporto il codice che ho allegato qualche messaggio sopra.

    Codice PHP:
     $result mysql_query("INSERT INTO `media`(`timestamp`,`Temperaturamediadeldi`) SELECT `time_stamp`, ROUND(AVG(temperatura),1) FROM meteo GROUP BY DATE(`time_stamp`)= CURDATE()"

  8. #18
    ti confesso che faccio ncora fatica a capire, ma a questo punto sono io

    vediamo, se tu esegui questa query

    SELECT `time_stamp`, ROUND(AVG(temperatura),1) FROM meteo GROUP BY DATE(`time_stamp`)= CURDATE()

    quante righe ottieni? secondo me tante quanti sono i giorni nella tabella meteo...

  9. #19
    Utente di HTML.it
    Registrato dal
    Nov 2017
    Messaggi
    15
    Niente da fare, anche cosi ottengo sempre 2 righe, quella del giorno corrente (che è corretto perchè in GROUP BY specifico CURDATE) e poi quella del primo giorno da cui ho iniziato le campionature

  10. #20
    SELECT DATE(`time_stamp`), ROUND(AVG(temperatura),1) FROM meteo GROUP BY DATE(`time_stamp`) HAVING DATE(`time_stamp`) = CURDATE()

    oppure

    SELECT DATE(`time_stamp`), ROUND(AVG(temperatura),1) FROM meteo WHERE DATE(`time_stamp`) = CURDATE() GROUP BY DATE(`time_stamp`) -- forse puoi omettere la group by()

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.