Chercher une valeur d'une page WEB [Arduino uno wifi REV 2]

Bonjour,

Je suis en train de réaliser un réveil dont je pourrais piloter l’heure ou il sonne à l’aide d’une page web, mais j’ai du mal à comprendre. Pardonnez mon incompétence ^^

Pour le moment, la page web est créee, j’arrive à écrire des données (merci les codes trouvés sur internet) Mais je n’arrive pas à les stocker quand j’appuie sur “valider”

Comment puis-je faire pour récupérer la valeur M et H et la mettre dans la variable minute et heure?

Voici le code ou je pense que la donnée est stockée, mais je ne sais pas comment la mettre dans une variable:

  client.println( "<p><span style='font-size:48px;'><span style='font-size:28px;'>Heures:&nbsp;<input maxlength='2' name='H' type='tel' value='' /></span></span></p>");
  client.println( "<form action='/' method='POST'>");
  client.println( "<p><span style='font-size:28px;'>Minutes:<input maxlength='2' name='M' type='tel' value='' /></span></p>");
  client.println( "<p><span style='color:#FF0000;'><span style='font-size:20px;'>");

Et voici mon code complet:

/*
  WiFi Web Server

 A simple web server that shows the value of the analog input pins.

 This example is written for a network using WPA encryption. For
 WEP or WPA, change the Wifi.begin() call accordingly.

 Circuit:
 * Analog inputs attached to pins A0 through A5 (optional)

 created 13 July 2010
 by dlf (Metodo2 srl)
 modified 31 May 2012
 by Tom Igoe

 */

#include <SPI.h>
#include <WiFiNINA.h>
#include <NTPClient.h>


#include "arduino_secrets.h" 
///////please enter your sensitive data in the Secret tab/arduino_secrets.h
char ssid[] = SECRET_SSID;        // your network SSID (name)
char pass[] = SECRET_PASS;    // your network password (use for WPA, or use as key for WEP)
int keyIndex = 0;                 // your network key Index number (needed only for WEP)

int status = WL_IDLE_STATUS;
String msg = "";
WiFiServer server(80);

void setup() {
  //Initialize serial and wait for port to open:
  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  // check for the WiFi module:
  if (WiFi.status() == WL_NO_MODULE) {
    Serial.println("Communication with WiFi module failed!");
    // don't continue
    while (true);
  }

  String fv = WiFi.firmwareVersion();
  if (fv < WIFI_FIRMWARE_LATEST_VERSION) {
    Serial.println("Please upgrade the firmware");
  }

  // attempt to connect to Wifi network:
  while (status != WL_CONNECTED) {
    Serial.print("Attempting to connect to SSID: ");
    Serial.println(ssid);
    // Connect to WPA/WPA2 network. Change this line if using open or WEP network:
    status = WiFi.begin(ssid, pass);

    // wait 10 seconds for connection:
    delay(10000);
  }
  server.begin();
  // you're connected now, so print out the status:
  printWifiStatus();
}


void loop() {
  // listen for incoming clients
  WiFiClient client = server.available();
  if (client) {
    Serial.println("new client");
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        Serial.write(c);
        // if you've gotten to the end of the line (received a newline
        // character) and the line is blank, the http request has ended,
        // so you can send a reply
        if (c == '\n' && currentLineIsBlank) {
          // send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println("Connection: close");  // the connection will be closed after completion of the response
          client.println("Refresh: 5");  // refresh the page automatically every 5 sec
          client.println();
          client.println("<!DOCTYPE HTML>");
          
  client.println( "<html>");
  client.println( "<head>");
  client.println( "<title>Reveil</title>");
  client.println( "</head>");
  client.println( "<body>");
  client.println( "<h1><span style=font-size: 72px;'><img alt='' src='https://image.freepik.com/icones-gratuites/trois-o-reveil_318-9260.jpg' style='width: 100px; height: 105px;' /><span style='font-family:times new roman,times,serif;'>Reveil</span></span></h1>");
  client.println( "<h1><span style='font-size:48px;'>Changer L&#39;heure du R&eacute;veil:</span></h1>");
  client.println( "<form action='/' method='POST'>");
  client.println( "<p><span style='font-size:48px;'><span style='font-size:28px;'>Heures:&nbsp;<input maxlength='2' name='H' type='tel' value='' /></span></span></p>");
  client.println( "<form action='/' method='POST'>");
  client.println( "<p><span style='font-size:28px;'>Minutes:<input maxlength='2' name='M' type='tel' value='' /></span></p>");
  client.println( "<p><span style='color:#FF0000;'><span style='font-size:20px;'>");
  client.println( msg);
  client.println( "</span></span></p>");
  client.println( "<p><input name='Valider' type='submit' value='Valider' /></p>");
  client.println( "</body>");
  client.println( "</html>");
          break;

        }
        if (c == '\n') {
          // you're starting a new line
          currentLineIsBlank = true;
        } else if (c != '\r') {
          // you've gotten a character on the current line
          currentLineIsBlank = false;
        }
      }
    }
    // give the web browser time to receive the data
    delay(1);

    // close the connection:
    client.stop();
    Serial.println("client disconnected");
  }
}


void printWifiStatus() {
  // print the SSID of the network you're attached to:
  Serial.print("SSID: ");
  Serial.println(WiFi.SSID());

  // print your board's IP address:
  IPAddress ip = WiFi.localIP();
  Serial.print("IP Address: ");
  Serial.println(ip);

  // print the received signal strength:
  long rssi = WiFi.RSSI();
  Serial.print("signal strength (RSSI):");
  Serial.print(rssi);
  Serial.println(" dBm");
}

N’hésitez pas si ma question n’est pas claire :frowning:

Vous Imprimez les requêtes reçues depuis le navigateur mais ne capturez par le contenu de chaque ligne.... une de ces lignes (si le html est bien fichu) contient le formulaire (en POST).