Je n'arrive pas à récupérer ce que j'ai écrit dans la zone de texte

Bonjour, je réalise un projet et pour cela j'ai besoin de récupérer ce que j'ai écrit dans ma zone de texte.
J'utilise l'ESP8266 et grâce à cela j'ai crée une page avec ceci:

https://www.noelshack.com/2018-10-3-1520457948-arduino-topic.png

On peut voir que le resultat de ma zone de texte est écrit dans l'url juste après "?surface="
Or lorsque je veux récupérer ce que j'ai écris j'ai "GET /?surface=text HTTP/1.1" mais moi je veux seulement "text", j'ai déjà essayer d'utiliser des pointeurs mais je n'y arrive vraiment pas.
Merci de votre aide.

Voici mon code:

#include <ESP8266WiFi.h>
 
const char* ssid = "name";
const char* password = "password";

WiFiServer server(80);
 
void setup() {
  Serial.begin(115200);
  delay(10);

  // Connexion a reseau WiFi 
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
 
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
 
  // Start the server
  server.begin();
  Serial.println("Server started");
 
  // Print the IP address
  Serial.print("Use this URL : ");
  Serial.print("http://");
  Serial.print(WiFi.localIP());
  Serial.println("/");
 
}
 
void loop() {
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }
 
  // Wait until the client sends some data
  
  while(!client.available()){
    delay(1);
  }
 
  // Read the first line of the request
  String request = client.readStringUntil('\r');

  Serial.println(request);

  // Return the response
  client.println("HTTP/1.1 200 OK");
  client.println("Content-Type: text/html");
  client.println(""); //  do not forget this one
  client.println("<!DOCTYPE HTML>");
  client.println();
  client.println(""); //  do not forget this one    
  client.println("<html>"); 
  client.println("<head>");
  client.println("<title>TITLE</title>");
  client.println("<meta content=\"text/html; charset=utf-8\" />");
  client.println("</head>");
  client.println("<body>");
  client.println("<form>");
  client.println("<p>Entrez votre texte:</p>");
  client.println("<input type=\"text\" name=\"surface\" />

");
  client.println("<input type=\"submit\" onClick=\"surface();\" />");
  client.println("</form>");
  client.println("</body>");
  client.println("</html>"); 
 

 
}

Utilisez strtok() ou comme vous savez que vous avez un truc du genre

GET /?surface=[color=red]XXXXXX[/color] HTTP/1.1

Vous savez où commence le message et il se termine à l’espace

Je pense que tu trouveras une réponse sur Zestedesavoir

Je n'ai rien vu d'intéressant, et je ne comprend pas trop comment utiliser strtok(). Si vous avez un lien d'un tutoriel je ne dis pas non. Merci d'avance.

rayankill:
Je n'ai rien vu d'intéressant

Je pensais à la section "Lire une réponse"

Globalement, voici le code pour lire une réponse :

void loop()
{
  char carlu = 0;
  // on lit les caractères s'il y en a de disponibles
  if(client.available()) {
    carlu = client.read();
    Serial.print(carlu);
  }

  // Si on est bien déconnecté.
  if (!client.connected()) {
    Serial.println();
    Serial.println("Deconnexion !");
    // On ferme le client
    client.stop();
    while(1); // On ne fait plus rien
  }
}

Tu testes les valeurs de la variable carlu : dès que tu trouves "=" ton texte commence, lorsque tu trouves "H" suivi de "T" c'est terminé

rayankill:
Je n'ai rien vu d'intéressant, et je ne comprend pas trop comment utiliser strtok(). Si vous avez un lien d'un tutoriel je ne dis pas non. Merci d'avance.

Regardez toutes les fonctions de ces 2 librairies standard qui travaillent sur des c-string —>stdlib.h et string.h