Merhaba ,
Server'a bağlandığımda LiitleFS hafızadan okurken serial monitörde düzgün okuyor ve phpmyadmin ( mysql) düzgün atıyormuş gibi gözüküyor ama sadece tek bir veri gönderiyor. Mesela hafızada 20 veri varsa sadece 1 veri alıyorum. Neden kaynaklanıyor yardım ederseniz sevinirim. Sanırım sorun php kodunda php kodu yukarıdaki mesajdadır. Örnek serial
connected
Use this URL to connect:
http://192.168.0.222/ // örnek ip adres
01 22 20 29/11/21 10:05:27
GET /testcode/dht.php?humidity=20.00
&temperature=
22.00
02 22 20 29/11/21 10:05:58
GET /testcode/dht.php?humidity=20.00
&temperature=
22.00
03 22 20 29/11/21 10:06:28
GET /testcode/dht.php?humidity=20.00
&temperature=
22.00
04 22 20 29/11/21 10:06:59
GET /testcode/dht.php?humidity=20.00
&temperature=
22.00
05 22 20 29/11/21 10:07:29
GET /testcode/dht.php?humidity=20.00
&temperature=
22.00
Kod:
if (client.connect(server, 80)) {
Serial.println("connected");
Serial.println("Use this URL to connect: http://"+WiFi.localIP().toString()+"/");// Print the IP address
File datafile = SPIFFS.open(DataFile, "r");
if (datafile.available()) { // if the file is available, read from it
int read_ahead = datafile.parseInt(); // Sometimes at the end of file, NULL data is returned, this tests for that
if (read_ahead != 0) { // Probably wasn't null data to use it, but first data element could have been zero and there is never a record 0!
sensor_data[index_ptr].lcnt = read_ahead ;
sensor_data[index_ptr].temp = datafile.parseFloat()*10;
sensor_data[index_ptr].humi = datafile.parseFloat()*10;
sensor_data[index_ptr].ltime = datafile.readStringUntil('.');
sensor_data[index_ptr].ltime.trim();
index_ptr += 1;
log_count += 1;
}
if (index_ptr > table_size) {
for (int i = 0; i < table_size; i++) {
sensor_data[i].lcnt = sensor_data[i+1].lcnt;
sensor_data[i].temp = sensor_data[i+1].temp;
sensor_data[i].humi = sensor_data[i+1].humi;
sensor_data[i].ltime = sensor_data[i+1].ltime;
sensor_data[i].ltime.trim();
}
index_ptr = table_size;
}
for (int i = 0; i <= index_ptr; i++) {
Serial.println(((i<10)?"0":"")+String(sensor_data[i].lcnt)+" "+String(sensor_data[i].temp)+" "+String(sensor_data[i].humi)+" "+String(sensor_data[i].ltime));
humidityData = float(sensor_data[i].humi);
temperatureData = float(sensor_data[i].temp);
Serial.print("GET /testcode/dht.php?humidity=");
client.print("GET /testcode/dht.php?humidity="); //YOUR URL
Serial.println(humidityData);
client.print(humidityData);
client.print("&temperature=");
Serial.println("&temperature=");
client.print(temperatureData);
Serial.println(temperatureData);
client.print(" "); //SPACE BEFORE HTTP/1.1
client.print("HTTP/1.1");
client.println();
client.println("Host: 192.168.0.222"); // örnek ip
client.println("Connection: close");
client.println();
delay(5000);
} }
datafile.close();
if (SPIFFS.exists(DataFile)) {
SPIFFS.remove(DataFile);
Serial.println(F("File deleted successfully"));
reset_array();
}
// Make a HTTP request:
Serial.print("GET /testcode/dht.php?humidity=");
client.print("GET /testcode/dht.php?humidity="); //YOUR URL
Serial.println(humi);
client.print(humi);
client.print("&temperature=");
Serial.println("&temperature=");
client.print(temp);
Serial.println(temp);
client.print(" "); //SPACE BEFORE HTTP/1.1
client.print("HTTP/1.1");
client.println();
client.println("Host: 192.168.0.222"); // örnek ip
client.println("Connection: close");
client.println();
} else {
Bağlanmadıysa hafızaya kayıt ediyorum }