|
|
|
สอบถามวิธีส่งค่าจาก esp8266 ขึ้นบนฐานข้อมูล phpmyadmin ทำอย่างไรคะ ??? |
|
|
|
|
|
|
|
ตอนนี้ต้องการเอาค่าจาก esp 8266 มี 3 ค่าคือ 1. ค่า count 2. ค่า val 3.ค่า crack ที่อยากเอาขึ้น ฐานข้อมูล phpmyadmin ทำไม่ขึ้นสักที งงมากไม่รู้มาเกิดจากอะไรรบกวนพี่ๆช่วยดูให้หน่อยค้าาา
ปล.มือใหม่ผิดพลาดตรงไหนขอโทษด้วยคะ
Code (PHP)
<?php
$count = $_GET['count'];
$value = $_GET['val'];
$crack = $_GET['crack'];
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "tutor2";
// Create connection
$conn = new mysqli($servername, $username,$password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$val = $_GET['count','val','crack'];
$sql = "INSERT INTO esp8266(count, val, crack) VALUES ('$count', '$val', '$crack');";
$result= mysqli_query($con,$sql);
if ($conn->query($sql) === TRUE) {
echo "save OK";
} else {
echo "Error:" . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
****อันนี้คือโค้ดส่วน php คะ
Code (C#)
#include <Wire.h>
#include <time.h>
#include <LiquidCrystal_I2C.h>
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <ESP8266HTTPClient.h>
ESP8266WiFiMulti WiFiMulti;
int dst = 0;
int sensor = D0;
int statussensor = 1;
int count = 0;
int val = 0;
int crack = 0;
int buttonPin = D3;
int buttonState = 0;
int led1 = D5;
LiquidCrystal_I2C lcd(0x27, 20, 4); //ถ้าจอไม่แสดงผล ให้ลองเปลี่ยน 0x3F เป็น 0x27
void setup()
{
Wire.begin();
Serial.begin(115200);
for (uint8_t t = 4; t > 0; t--) {
Serial.printf("[SETUP] WAIT %d...\n", t);
Serial.flush();
delay(1000);
}
WiFiMulti.addAP("UNIFABFAC", "uniaireunifab123"); // ssid , password
randomSeed(50);
pinMode(sensor, INPUT);
pinMode(buttonPin, INPUT);
pinMode(led1, OUTPUT);
digitalWrite(led1, LOW);
lcd.begin();
lcd.backlight(); // เปิดไฟ backlight
lcd.setCursor(2, 1); // ไปที่ตัวอักษรที่ 4 บรรทัดที่ 0
lcd.print("PROJECT CUTTING ");
lcd.setCursor(3, 2); // ไปที่ตัวอักษรที่ 0 บรรทัดที่ 1
lcd.print("BY JA AND AOMZ");
delay(2000);
lcd.clear();
delay(0);
}
void loop()
{
statussensor = digitalRead(sensor);
val = (count-crack);
delay(0);
buttonState = digitalRead(buttonPin);
delay(0);
/* { if ((WiFiMulti.run() == WL_CONNECTED)) {
HTTPClient http;
String url = "http://172.20.10.2/nodemcu/esp8266mysql/add.php?";
url += "count=";
url += count;
url += "val=";
url += val;
url += "crack=";
url += valput;
Serial.println(url);
http.begin(url); //HTTP
int httpCode = http.GET();
if (httpCode > 0) {
Serial.printf("[HTTP] GET... code: %d\n", httpCode);
if (httpCode == HTTP_CODE_OK) {
String payload = http.getString();
Serial.println(payload);
}
} else {
Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
}
http.end();
}
delay(30000);
}*/
if (buttonState == LOW)
{
crack++;
delay(10);
digitalWrite(led1,HIGH);
Serial.println(crack);
//digitalWrite(ledPin, HIGH);
Serial.println("ok");
delay(100);
}
else
{
digitalWrite(led1,LOW);
Serial.println("Not ok ");
delay(100);
}
if (statussensor == 0)
{ count++;
Serial.println(count);
Serial.println("Detect");
/*lcd.setCursor(12, 2);
lcd.print(count);*/
lcd.setCursor(14, 3);
lcd.print("DETECT");
delay(1000); // หน่วงเวลา 1 วินาที
lcd.clear(); // ล้างหน้าจอ
delay(0);
lcd.setCursor(2, 0);
lcd.print("PROJECT CUTTING ");
lcd.setCursor(4, 1);
lcd.print("COUNT :");
lcd.setCursor(13, 1);
lcd.print(count);
lcd.setCursor(0, 2);
lcd.print("VAL:");
lcd.setCursor(5, 2);
lcd.print(val);
lcd.setCursor(10, 2);
lcd.print("CRACK:");
lcd.setCursor(17, 2);
lcd.print(crack);
lcd.setCursor(0, 3);
lcd.print("SENSOR INFAR: ");
{ if ((WiFiMulti.run() == WL_CONNECTED)) {
HTTPClient http;
String url = "http://192.168.199.101/nodemcu/esp8266mysql/add.php?";
url += "count=";
url += count;
url += "&val=";
url += val;
url += "&crack=";
url += crack;
Serial.println(url);
http.begin(url); //HTTP
int httpCode = http.GET();
if (httpCode > 0) {
Serial.printf("[HTTP] GET... code: %d\n", httpCode);
if (httpCode == HTTP_CODE_OK) {
String payload = http.getString();
Serial.println(payload);
}
} else {
Serial.printf("[HTTP] GET... failed, error: %s\n", http.errorToString(httpCode).c_str());
}
http.end();
}
delay(10);
}
}
else
{
Serial.println("No ");
lcd.setCursor(16, 3);
lcd.print("NO");
delay(1000);
lcd.clear();
delay(0);
lcd.setCursor(2, 0);
lcd.print("PROJECT CUTTING ");
lcd.setCursor(4, 1);
lcd.print("COUNT :");
lcd.setCursor(13, 1);
lcd.print(count);
lcd.setCursor(0, 2);
lcd.print("VAL:");
lcd.setCursor(5, 2);
lcd.print(val);
lcd.setCursor(10, 2);
lcd.print("CRACK:");
lcd.setCursor(17, 2);
lcd.print(crack);
lcd.setCursor(0, 3);
lcd.print("SENSOR INFAR: ");
delay(10);
}
}
******* อันนี้โค้ดส่วนขอ esp 8266 คะ
Tag : PHP, MySQL, MySQL, HTML, Apache, XAMPP
|
|
|
|
|
|
Date :
2019-08-19 10:40:34 |
By :
Aomsinpp |
View :
3662 |
Reply :
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$val = $_GET['count','val','crack'];
มันมีแบบนี้ด้วยเหรอ?
|
ประวัติการแก้ไข 2019-08-19 14:57:42 2019-08-19 14:59:25
|
|
|
|
Date :
2019-08-19 14:56:30 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
บันทัด 18 มัน error ลบทิ้งก็ทำงานได้แล้ว
$val จะกำหนดอะไรให้มันเหรอครับ ถีงใช้คำสั่งนั้น(คำสั่งผิดรูปแบบ)
$val ได้ถูกกำหนดค่าจาก บันทัด 04 แล้วจะทำอะไรกับมันอีกครับ
คำสั่งก็ซ้ำซ้อนอีกต่างหาก
Code (PHP)
<?php
$count = $_GET['count'];
$val = $_GET['val'];
$crack = $_GET['crack'];
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "tutor2";
// Create connection
$conn = new mysqli($servername, $username,$password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// $val = $_GET['count','val','crack'];
$sql = "INSERT INTO esp8266(count, val, crack) VALUES ('$count', '$val', '$crack');";
//$result= mysqli_query($con,$sql);
$conn->query($sql);
if ( $conn->errno < 1) {
echo "save OK";
} else {
echo "Error:" . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
|
ประวัติการแก้ไข 2019-08-19 19:47:27 2019-08-19 19:48:52
|
|
|
|
Date :
2019-08-19 19:42:37 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|