FlatBin

AP1 Code Komplett

JS - Daten abrufen: setInterval(() => { fetch("auslesen.php").then((result) => result.json()).then((data) => console.log(data)) }, 3000); PHP - Daten auslesen: $con = mysqli_connect("localhost","admin","ap1","temperaturdaten"); $res = mysqli_query($con,"SELECT * FROM daten ORDER BY timestamp DESC LIMIT 1"); while($row = mysqli_fetch_assoc($res)) echo json_encode($row) Python - Sensor auslesen und Daten in DB schreiben: import RPi.GPIO as gpio import dht11 import loglib import time import mysql.connector as connection #import pymysql.cursors gpio.setwarnings(False) gpio.setmode(gpio.BCM) gpio.cleanup() dht11_sensor = dht11.DHT11(pin=12) #angeschlossene pins: "+" pin4 (5 V) "-" pin 6 (Ground) "out" pin 32 (GPIO 12) ''' #log settings i=0 loghaeufigkeitsekunden = 2.0 #sekunden logart = 3 #1 temp 2feuchtigkeit 3 beides aufbewahrungszeitsekunden = 60.0 #sekunden ''' #con = pymysql.connect(host='localhost',user='admin',password='ap1',db='temperaturdaten',charset='utf8',cursorclass=pymysql.cursors.DictCursor) try: con = connection.MySQLConnection(user='admin', password='ap1', host='localhost', database='temperaturdaten') cursor = con.cursor() except mysql.connector.Error as err: if err.errno == errorcode.ER_ACCESS_DENIED_ERROR: print("Something is wrong with your user name or password") elif err.errno == errorcode.ER_BAD_DB_ERROR: print("Database does not exist") else: print(err) while True: # Messung durchführen result = dht11_sensor.read() # Werte ausgeben if result.is_valid(): try: print(f'Temperatur: {result.temperature}°C | Humidity: {result.humidity}%\n') #cursor.execute("INSERT INTO daten (temperatur, feuchtigkeit, timestamp) VALUES ('{result.temperature}', '{result.humidity}', NOW()) ") add_tempdata="INSERT INTO daten(temperatur,feuchtigkeit)VALUES(%s,%s)" data_tempdata=(str(result.temperature),str(result.humidity)) cursor.execute(add_tempdata, data_tempdata) con.commit() except mysql.connector.Error as err: print(err) else: print(f"Errorcode: {result.error_code}") time.sleep(3.0) con.close()

Neuen Paste erstellen