#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#define DHTPIN 15
#define DHTTYPE DHT22
#include <Wire.h>

#include <WiFi.h>
#include <WiFiClient.h> 
#include <WebServer.h>
#include <HTTPClient.h>

LiquidCrystal_I2C lcd(0x27,20,4);
int chk;
DHT dht(DHTPIN, DHT22);


const char* ssid = "Wokwi-GUEST";  
const char* password = "";

void setup() {
 Serial.begin(115200);
  dht.begin();
  delay(1000);

  WiFi.begin(ssid, password);
  
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);

  

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Serial.println("");
  Serial.print("Connected to ");
  Serial.println(ssid);
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP()); 

   lcd.init();
  lcd.backlight();
  lcd.setCursor(3,0);
  lcd.print("Papan Informasi");
  lcd.setCursor(2,1);
  lcd.print("Suhu & Kelembaban");
  lcd.setCursor(8,2);
  lcd.print("BANK MANDIRI");
  lcd.setCursor(2,3);
  lcd.print("MELAWAI JAKARTKA");
  delay(3000);
  lcd.clear();

}

void loop() {
  HTTPClient http;

  String h, t, getData, Link;

   h = dht.readHumidity();
   t = dht.readTemperature();

  // if (isnan(h) || isnan(t)) {
  //   Serial.println("Gagal membaca dari sensor DHT22!");
  //   return;
  // }

  getData = "?suhu=" + t + "&kelembaban=" + h ; 
  Link = "https://temperatur.gift-for-you.store/input.php" + getData;
  
  http.begin(Link);    
  
  int httpCode = http.GET();           
  String payload = http.getString();

  Serial.println(httpCode);   
  Serial.println(payload);  

  http.end(); 

  lcd.init();
  lcd.backlight();
  lcd.setCursor(3,0);
  lcd.print("Papan Informasi");
  lcd.setCursor(3,1);
  lcd.print("BANK MANDIRI");
  //suhu
  lcd.setCursor(0,2);
  lcd.print("Suhu       :");
  lcd.setCursor(13,2);
  lcd.print(t);
  lcd.setCursor(19,2);
  lcd.print("C");
  //kelembaban
  lcd.setCursor(0,3);
  lcd.print("Kelembaban :");
  lcd.setCursor(13,3);
  lcd.print(h);
  lcd.setCursor(19,3);
  lcd.print("%");
  // Serial.print("suhu : ");
  // Serial.println(h);
  // Serial.print("Kelembaban : ");
  // Serial.println(t);
  //delay(500);
  //lcd.clear();
   delay(5000);
}