Informations lost in a string At first, I sorry if I make some English faults but I'm French. 

So, I'm making a connection between a client and an Arduino Uno. I receive all data that I need but when I send a response to my client some characteres are lost. 
I receive this format : GET /?b=7&amp;p=100$ (for exemple)
And my Arduino sends this to my client : GET /?b=7&amp;p=1d

This is the function where I get all data from my client : 

void read_data(int *state, int *progress_program){
  // Check if there is a client
  EthernetClient client = server.available();
  if (client) {
    url = "";
    index = 0;
    Serial.println("\nnew client");
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        Serial.println(c);
       if(c != '$') { // if end of char
          url[index] = c;
          index++;
        } else {
          url[index] = '\0';
          int i;
         Serial.print("\n");
          for(i=0;i&lt;index;i++)
            Serial.print(url[i]);
          if(interpret(state, progress_program)){
            action();
            delay(100);  
          }
          answer(client);
          break;
        }
      }
    }
    url[0] = '\0';
    // give the web browser time to receive the data
    client.stop();
    delay(100);
    Serial.println("\nclient disconnected");
  }
}


And the response sent to the client : 

void answer(EthernetClient client){
  Serial.print("\nResponse"); // debug
  delay(100);
  client.print(url);
  Serial.print("Response Sent");
  delay(100);
}


With client.write(url) there is the same problem.

Have you got a solution? 
thanks
So, the solution was very simple, 
My pointer "url" received a constant null string with url=""; at the beginning. To initialize a string as null we need to make this : 

 url[0] = '\0';


thanks