Salve a tutti, ho un problema che non riesco a risolvere... ho un db con delle informazione su degli orari... ora ho uno script (per velocizzare faccio un ciclo ogni 10 secondi) che non riesce a memorizzare nel caso cambi l'orario. Es ho impostato orario ore alle 8 i minuti a 20... faccio partire il programma tutto ok... Funziona ma se dal db cambio da 20 a 25, lo script mi mostra sempre 20 nonostante che faccio una chiamata al db ogni volta... Non so dove sbaglio , qualcuno mi può illuminare???
posto lo script di prova:
codice:#!/usr/bin/env python import wiringpi as gpio from time import sleep import datetime import MySQLdb menuo = True blocco = True # Open database connection conn = MySQLdb.connect(host="localhost", user="miauser",passwd="miapassword", db="domotica") c = conn.cursor() #fine controllo setup def orario_su(): for id_tap in range(1,9): sql = "SELECT pos_attuale,pos_doveva,tur_notte,pos_program,dimensione FROM tapparelle WHERE id='%s'" % (id_tap) c.execute(sql) results = c.fetchall() for row in results: pos_attuale = row[0] pos_doveva = row[1] tur_notte = row[2] pos_program = row[3] dimensione = row[4] #print dimensione if(dimensione == "grande"): print "La tapparella e' grande" #print di prova def menu_orario(): menuo = True t = datetime.datetime.now() if (blocco == True): #sistema per orario sql = "SELECT h_up,m_up,h_down,m_down,h_down_ultima,m_down_ultima,attivo FROM orario_tap WHERE id=1" c.execute(sql) results = c.fetchall() for row in results: h_up = row[0] m_up = row[1] h_down = row[2] m_down = row[3] h_down_ultima = row[4] m_down_ultima = row[5] attivo = row[6] print h_up #prova di lettura database print m_up if(attivo == "si"): if((t.hour == h_up) and (t.minute == m_up)): orario_su() #fine sistema per orario while True: if (menuo == True): menu_orario() sleep(10)

Rispondi quotando