#include <ESP8266WiFi.h>;
#include <DNSServer.h>
#include <EEPROM.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
int valeur;
const byte DNS_PORT = 53;
String Argument_Name ; // contient les nom des arguments
IPAddress apIP(192, 168, 1, 1); // Ip choisie pour le serveur AP
DNSServer dnsServer;
ESP8266WebServer webserver(80);
//MDNSResponder mdns;
WiFiServer server(80);
void handleRoot()
{ String IPaddress=apIP.toString();
String webpage = "<html><head><meta name='viewport' content='width=device-width, initial-scale=1' /></head><body>";
Serial.println(" au départ valeur vaut : ");
Serial.println(valeur);
webpage += "<form action='http://" + IPaddress + "/' method='POST'>Valeur : <input type='number' name='valeur' min='12' max='254' value= ";
webpage += String(valeur) + "><input type='submit' value='Valider'></form>";
webpage += "<form action='http://" + IPaddress + "/'><input type='submit' value='Mise à jour affichage' /></form>";
webpage += "</body></html>";
webserver.send(200, "text/html", webpage);
if (webserver.args() > 0 )
{ for ( uint8_t i = 0; i < webserver.args(); i++ )
{ Argument_Name = webserver.argName(i);
if (webserver.argName(i) == "valeur")
{ Serial.println(" au milieu valeur vaut : ");
Serial.println(valeur);
valeur = webserver.arg(i).toInt();
Serial.println("enfin valeur vaut : ");
Serial.println(valeur); }
} } }
void setup()
{ ESP.eraseConfig();
Serial.begin(115200);
delay(500);
Serial.println("\n=====================\n");
WiFi.softAPdisconnect();
WiFi.mode(WIFI_AP_STA);
WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0));
WiFi.softAP("ESP8266");
dnsServer.start(DNS_PORT, "*", apIP);
IPAddress apip = WiFi.softAPIP();
Serial.print("Se connecter à \n"); Serial.println(apip);
dnsServer.start(DNS_PORT, "*", apIP);
webserver.begin();
webserver.onNotFound([]() { handleRoot(); });
webserver.on("/", handleRoot);
delay(50);
Serial.println("Serveur HTTP démarré"); }
void loop()
{ dnsServer.processNextRequest();
webserver.handleClient(); }
On a un formulaire qui demande une valeur...
On la rentre et on valide...
Pas de modification dans l'affichage et il faut cliquer sur mise à jour affichage pour que le champ se mette à jour.
En détail... Comment fonctionne un formulaire ?
Je sèche... Comment faire pour éviter le second formulaire et que la validation du premier suffise ?
La valeur est bien mise à jour en mémoire mais après le rafraîchissement de la zone "value"
Finir l'année sur un échec... :-(((