Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2015
    Messaggi
    4

    php - "raccordare" variabili in un array

    Salve, ho un problema che non riesco ha capire come potrei risolvere.
    Sostanzialmente metto il risultato di una query in un array, tipo questa:

    Array
    (
    [0] => Array
    (
    [0] => 2014-10-01 04:00:00
    [t_time] => 2014-10-01 04:00:00
    [1] => 4
    [t_temperature] => 4
    )

    [1] => Array
    (
    [0] => 2014-10-01 07:00:00
    [t_time] => 2014-10-01 07:00:00
    [1] => 8
    [t_temperature] => 8
    )

    )

    vorrei "raccordare", inserendo nell'array, le temperature ogni 15 minuti.
    Ad esempio tra array[0] e array[1] vorrei inserire altri 12 array
    (3 ore per 4 quarti d'ora) "virtuali" ogni 15 minuti che raccordino la
    temperatura [0][1] con la temperatura [1][1] (dunque in questo caso di circa
    0.33 ogni 15 minuti.)
    Avete qualche suggerimento, qualche idea?
    Grazie mille in ogni caso

  2. #2
    e le temperature come le ottieni?
    Questa volta, più che un voto.. è favoreggiamento.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2015
    Messaggi
    4
    con un api json_get ad un sito metereologico. Ho schedulato una richiesta ogni 3 ore (alle 4, 7, 10, 13, 16, 19, 22) che inserisco in una tabella. Ho un'altra tebella dove ricevo i consumi in kwh ogni 15 minuti da un multimetro. in quest'ultima tabella ho creato anche una colonna temperature che verra' popolata da quella che riceve le temparature dall'api. Ora il mio problema sarebbe quello di riempire i quarti d'ora vuoti tra una temparatura e l'altra. So che non è molto ortodosso aver ridondato i campi temperature in due tabelle ma per il momento non e' il mio problema.

  4. #4
    e perchè non richiami i quarti d'ora quando fai la query che hai postato nel primo post?

    ti servono delle join e dovrei conoscere la struttura di queste tabelle per aiutarti, sempre che si tratti di tabelle mysql
    Questa volta, più che un voto.. è favoreggiamento.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2015
    Messaggi
    4
    Si uso mysql e non richamo i quarti d'ora perche' non li ho. Faccio le letture delle temperature ogni 3 ore (alle 4, 7, 10, 13, 16, 19, 22). La tabella quindi si popola con un t_id (identificativo della località), t_time (yyyy-mm-dd hh:mm:ss), t_temperature (la temperatura). Acqusititi questi dati dovrei fare un update (uso update perche' le temparature le aggiorno sempre e solo dopo aver acquisito i kwh) in un'altra tabella che contiene i consumi in kwh:
    pv_id (identificativo località = t_id), pv_time (yyyy-mm-dd hh:mm:ss), pv_kwh (i kwh consumati). Questa tabella ha le letture dei kwh ogni quarto d'ora. In questo modo mi troverie una cosa tipo:

    pv_id pv_time pv_kwh pv_temp
    10 2015-04-01 04:00:00 55 4
    10 2015-04-01 04:15:00 58 null
    10 2015-04-01 04:30:00 43 null
    10 2015-04-01 04:45:00 50 null
    e cosi' via fino ad arrivare alle 07:00 (leggo le temperature ogni 3 ore)
    10 2015-04-01 07:00:00 75 8
    quello che pensavo di fare prima dell'update nella tabella dei kwh era di calcolare le differenze tra temperatua e dividerla per 12 (trovo l'incremento/decremento per quarto d'ora) quindi incrementare un array dalla temperatura +/-decremento ogni quarto d'ora solo se il campo e' null. Fatto questo prendo i dati e faccio l'update into tabella dei kwh. Non so se mi sono spiegato, cmq questa sarebbe l'idea.... non so pero' se mi sto' infilando in un casino fin'ora sono arrivato a trovare le differenze di temperatura e l'incremento/decremento.

  6. #6
    I quarti d'ora non li hai solo la prima volta.. poi avrai ogni 3 ore 4 quarti d'ora da visualizzare mi pare


    Devi fare un po' di chiarezza su alcune procedure però!

    1. Inserisci una località da monitorare

    2. Attivi lo script che ogni 3 ore recupera i dati dei quarti d'ora (questo viaggia indipendente dal punto 1. non devi fare delle update, ma farai tanti inserimenti quanti sono i quarto d'ora analizzati) circa 4 inserimenti ogni 3 ore..

    3. vuoi visualizzare i dati di una località, inserisci l'id nella query sopra e recuperi i dati associati alla località nelle 2 tabelle..

    sono 3 processi separati
    Questa volta, più che un voto.. è favoreggiamento.

  7. #7
    $select = "SEL_ECT * FROM localita L LE_FT JO_IN consumi C ON L.t_id = C.pv_id WHE_RE L.t_id = :id";

    c'è una query che non riesco a postare porco mio!
    Questa volta, più che un voto.. è favoreggiamento.

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2015
    Messaggi
    4
    Aspetta che devo aver fatto del casino Riprovo:

    ho cretao una tabella mysql molto semplice con t_id (id località che e' chiave primaria), t_time (anche chiave primaria) e t_temp (temperatura).

    ho fatto uno script in php che scarica le temperature e fa l'insert nella suddetta tabella. Questo scrip e' schedulato ogni 3 ore a partire dalle 04 del mattino). quindi io ho le temperature esattamente alle 4, 7, 10, 13, 16, 19, 22 di ogni giorno per le varie località) - Mi mancano tutte le letture delle temperature per i 12 quanti d'ora tra una lettura effettuata e l'altra. (una lettura ogni 3 ore)
    Secondo te come potrei "creare" delle letture virtuali che mi raccordino con le letture reali? in modo che quando mettero' l'esito di una query in un grafico avro' un risultato lineare raccordato? Sono stato piu' chiaro? Hai qualche idea da suggerirmi?

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 © 2025 vBulletin Solutions, Inc. All rights reserved.