ESP8266 MySQL Veritabanına Veri Ekleme, Arduino ESP8266 php, Arduino ESP8266 PHP get, NodeMCU SQL server, Arduino ESP8266 sql, Esp8266 mysql library, ESP8266 HTTP POST, Esp01 mysql, ESP8266 HTTP GET example, ESP8266 MySQL connector, ESP8266 PHP Web server, SQL server ESP8266, ESP8266 database connection, ESP8266 PHP MySQL, Arduino to MySQL database

XAMPP Programını İndirip Yüklenmesi

XAMPP Programını Çalıştıralım

MySQL phpMyAdmin Açalım

“dbnodemcu” adında yeni bir veri tabanı oluşturalım

“tbdata” adında “5” sütun sayılı tablo oluşturalım

Oluşturduğumuz tabloyo aşağıdaki resimdeki gibi dolduralım

“id” yi A_I(Auto Increment) işaretliyelim

Ve sonra aşağıdaki pencere gelicek “git” diyerek onaylıyalım

Sonra oluşturduğumuz tabloyu kaydelim

Oluşturduğumuz tablo aşağıdaki şekilde olması lazım

ESP8266 MySQL Veritabanına Veri Ekleme Kodları

PHP Kodları

connect.php

<?php
$servername = "localhost";
$username = "root";
$password = "";

try {
    $conn = new PDO("mysql:host=$servername;dbname=dbnodemcu", $username, $password);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    echo "Connected successfully"; 
    }
catch(PDOException $e)
    {
    echo "Connection failed: " . $e->getMessage();
    }
?>

save.php

<?php
include('connect.php');
$sensor1= $_GET['sensor1'];
$sensor2= $_GET['sensor2'];
$sensor3= $_GET['sensor3'];

$sql = "INSERT INTO `tbdata`(`sensor1`, `sensor2`, `sensor3`) VALUES ($sensor1,$sensor2,$sensor1)";
$conn->query($sql);

?>

Arduino IDE ve Kodları

Arduino IDE’ye http://arduino.esp8266.com/stable/package_esp8266com_index.json bu kodu ekliyelim

Arduino NodeMCU_MySQL.ino kodu

#include <ESP8266WiFi.h>


const char* ssid = "BURAYA WİFİ ADI YAZILACAK";
const char* password = "BURAYA WİFİ ŞİFRESİ YAZILACAK";

const char* host = "BUARAYA BİLGİSAYARIN IP ADRESİ 192... İLE BAŞLAYAN";


float sensor1=50;
float sensor2=60;
float sensor3=70; 
float sensor4=80; 

void setup() {
  Serial.begin(9600);
  delay(10);
  //WiFi ağına bağlanarak başlıyoruz
  Serial.println();
  Serial.println();
  Serial.print("connecting to WiFi ");
  Serial.println(ssid);
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());

 // int value = 0;
  }
  
  void loop(){
    //===============================================
    //    Sensörleri okumak için ayrılan alan
    sensor1=sensor1+ 2;
    sensor2+=2;
    sensor3+=2;
    //===============================================
    //delay(5000);
    //++value;

    Serial.print("connecting to ");
    Serial.println(host);

    //TCP bağlantıları oluşturmak için WiFiClient sınıfını kullanın
    WiFiClient client;
    const int httpPort = 80;
    if(!client.connect(host,httpPort)){
      Serial.println("connection faild ");
      return;
    }

    //Şimdi istek için bir URI oluşturduk
    String url = "/wifi/save.php?";
           url += "sensor1=";
           url += sensor1;
           url += "&sensor2=";
           url += sensor2;
           url += "&sensor3=";
           url += sensor3;

    Serial.print("Requesting URL: ");
    Serial.println(url);

    //Bu, isteği sunucuya gönderir
    client.print(String("GET ") + url + " HTTP/1.1\r\n" + 
                 "Host: " + host + "\r\n" +
                 "Connection: close\r\n\r\n");
   unsigned long timeout = millis();
    while (client.available() == 0){
      if(millis() - timeout > 5000){
      Serial.println(">>> client Timeout !");
      client.stop();
      return;
    }
  }

  //Cevabın tüm satırlarını sunucudan oku ve seriye yazdır
  while(client.available()){
    String line = client.readStringUntil('\r');
    Serial.print(line);
  }
  String line = client.readStringUntil('\r');
    Serial.print(line);

  Serial.println();
  Serial.println("closing connecting");
  delay(10000);
  }

http://localhost/KAYDEDİLEN_DOSYA_ADI/save.php?sensor1=122&sensor2=234&sensor3=347

LOCOLHOST BİLGİSAYARIN VEYA SUNUCUNUN IP ADRESİ


www.cihancalli.com.tr
Adresindeki Arduino Yazıları

    Leave a Reply

    E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

    4 replies on “ESP8266 MySQL Veritabanına Veri Ekleme”

    • telat
      9 Mayıs 2019 at 16:12

      Öncellikle eline sağlık ama işlem adımlarını yazsaydın ve bu php dosyalarını nereye koyacağız bu konuları da belirtmiş olsaydın bence daha anlaşılır olurdu

      • admin
        9 Mayıs 2019 at 16:16

        En kısa zamanda yeniden düzenleme yapacağım. Tavsiyeniz için teşekkür ederim.

    • telat
      10 Mayıs 2019 at 08:55

      const char* host = “000.000.000.000”; bu kısma ne yazmamız gerekiyor.
      ayrıca espwifi ağına bağlandığı halde
      while (WiFi.status() != WL_CONNECTED) {
      delay(500);
      Serial.print(“.”)
      bu komut satırında takılı kalıyor

      • admin
        10 Mayıs 2019 at 19:51

        Bilgisayrın ip adresini yazıcaksın ve yazıyı yeniden düzenledim test ettim son halini hiç bir sorun yok. Tekrar bir sorun olursa yazabilşrsiniz. Sayfamı ziyarte ettiğiniz için teşekkür ederim

    %d blogcu bunu beğendi: