#include <WiFi.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>
// Ganti dengan SSID dan Password WiFi kalian
const char* ssid = "Wokwi-GUEST";
const char* wifi_password = "";
// Ganti dengan detail koneksi MySQL kalian
IPAddress server_addr(175, 184, 251, 204); // Alamat IP MySQL Server
char mysql_user[] = "sensor"; // Username MySQL
char mysql_password[] = "IOT5ensor!"; // Password MySQL
char database[] = "iot"; // Nama database
WiFiClient client;
MySQL_Connection conn((Client *)&client);
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, wifi_password);
Serial.print("Connecting to WiFi");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println(" connected");
Serial.print("Connecting to MySQL");
if (conn.connect(server_addr, 3306, mysql_user, mysql_password)) {
Serial.println(" connected");
Serial.println("Connected to database.");
} else {
Serial.println(" connection failed.");
}
}
void loop() {
if (conn.connected()) {
// Dapatkan waktu saat ini
String tanggal = "2024-06-12"; // Ganti dengan kode untuk mendapatkan tanggal saat ini
String jam = "12:34:56"; // Ganti dengan kode untuk mendapatkan waktu saat ini
int nilai = 123; // Ganti dengan nilai sensor yang sebenarnya
// Format query SQL
char query[256];
sprintf(query, "INSERT INTO your_table (tanggal, jam, nilai) VALUES ('%s', '%s', %d)", tanggal.c_str(), jam.c_str(), nilai);
MySQL_Cursor* cursor = new MySQL_Cursor(&conn);
cursor->execute(query);
delete cursor;
Serial.println("Data inserted");
delay(10000); // Delay 10 detik sebelum mengirim data lagi
} else {
Serial.println("Not connected to MySQL.");
// Coba reconnect
if (conn.connect(server_addr, 3306, mysql_user, mysql_password)) {
Serial.println("Reconnected to database.");
} else {
Serial.println("Reconnection failed.");
}
delay(10000); // Delay 10 detik sebelum mencoba kembali
}
}