Cannot controle webrelais?

Hello,
I am trying to make a webserver to controle some relais.
I also combined some code to implementate a basic auth login.
I can login,but the relais do not switch.
Here is my code:

#include <UIPEthernet.h>

byte mac[] = {xx,xx,xx,xx,xx,xx };
IPAddress ip(192, 168, 1, 10);
EthernetServer server(80);

byte sampledata=50;            //some sample data - outputs 2 (ascii = 50 DEC)             
int ledPin1 = 3;  // LED pin 1
int ledPin2 = 4;  // LED pin 2
int ledPin3 = 6;  // LED pin 3
int ledPin4 = 7;  // LED pin 4

String readString = String(30); //string for fetching data from address

boolean LEDON1 = false; //LED status flag
boolean LEDON2 = false;
boolean LEDON3 = false;
boolean LEDON4 = false;

void setup() {

  Ethernet.begin(mac, ip);
  server.begin();
  pinMode(ledPin1, OUTPUT); 
  pinMode(ledPin2, OUTPUT); 
  pinMode(ledPin3, OUTPUT);
  pinMode(ledPin4, OUTPUT);
 
}


void SendOKpage(EthernetClient &client)
   {    
   
  
     char c = client.read();
      if (readString.length() < 30)     //read char by char HTTP request
      {
        readString.concat(c);    //store characters to string 
        //-----readString.append(c);

      }      

       if (c == '\n') {   //if HTTP request has ended
          //------------LED 1------------------------------------------------------------------------
           if (readString.substring(6,11) == "L1=ON")
           {
             digitalWrite(ledPin1, HIGH);    // set the LED on
             LEDON1 = true;
           }
             else if (readString.substring(6,12) == "L1=OFF")
            {
             digitalWrite(ledPin1, LOW);    // set the LED OFF
             LEDON1 = false;             
            }
//------------LED 2---------------------------------------------------------------------------
           if (readString.substring(6,11) == "L2=ON")
           {
             digitalWrite(ledPin2, HIGH);    // set the LED on
             LEDON2 = true;
           }
             else if (readString.substring(6,12) == "L2=OFF")
            {
             digitalWrite(ledPin2, LOW);    // set the LED OFF
             LEDON2 = false;             
            }  
            
//------------LED 3---------------------------------------------------------------------------
           if (readString.substring(6,11) == "L3=ON")
           {
             digitalWrite(ledPin3, HIGH);    // set the LED on
             LEDON3 = true;
           }
             else if (readString.substring(6,12) == "L3=OFF")
            {
             digitalWrite(ledPin3, LOW);    // set the LED OFF
             LEDON3 = false;             
            } 
           
//------------LED 4------------------------------------------------------------------------------------
           if (readString.substring(6,11) == "L4=ON")
           {
             digitalWrite(ledPin4, HIGH);    // set the LED on
             LEDON4 = true;
           }
             else if (readString.substring(6,12) == "L4=OFF")
            {
             digitalWrite(ledPin4, LOW);    // set the LED OFF
             LEDON4 = false;             
            }
       }
            
          // now output HTML data starting with standart header

          client.print("<body style=background-color:blue>");    //set background to blue
          client.println F("<h1><center>Welcome To Arduino Online Home Automation</center></h1>");
          client.println F("<font color='black'>");
          client.println F("
");

//--------LED 1 CONTROLL-------------------------------------------------------------------------------------------
          client.println F("<center><h2>Conrol Panel & Status Of the House</h2></center>");
          client.println F("<center><h2>LED 1</h2></center>");
          client.println F("<center><form method=get name=LED><input type=submit name=L1 value=ON method=get name=LED><input type=submit name=L1 value=OFF ></form></center>");      
          
            if (LEDON1)
            { 
             client.print ("<center><font color='green' size='3'> ON</center>");
            } 
            else 
            { 
             client.print ("<center><font color='red' size = '3'> OFF</center>");
            }
            client.println F("<font color='black' 
");

//--------LED 2 CONTROLL-------------------------------------------------------------------------------------------------------------------- 
          client.println F("<center><h2>LED 2</h2></center>");
          client.println F("<center><form method=get name=LED2><input type=submit name=L2 value=ON method=get name=LED2><input type=submit name=L2 value=OFF ></form></center>");     
       
            if (LEDON2)
            { 
            client.print ("<center><font color='green' size='3'> ON </center>");
            } 
            else 
            { 
             client.print ("<center><font color='red' size = '3'> OFF </center>");
            }
            client.println F("<font color='black' 
");
            
//--------LED 3 CONTROLL------------------------------------------------------------------------------------------------------------------
          client.println F("<center><h2>LED 13</h2></center>");
          client.println F("<center><form method=get name=LED3><input type=submit name=L3 value=ON method=get name=LED3><input type=submit name=L3 value=OFF ></form></center>");      
          
            if (LEDON3)
            { 
          client.print ("<center><font color='green' size='3'> ON </center>");
            } 
            else 
            { 
             client.print ("<center><font color='red' size = '3'> OFF </center>");
            }
            client.println F("<font color='black' 
");
            
//--------LED 4 CONTROLL-------------------------------------------------------------------------------------------------------
          client.println F("<center><h2>LED 4</h2></center>");
          client.println F("<center><form method=get name=LED4><input type=submit name=L4 value=ON method=get name=LED4><input type=submit name=L4 value=OFF ></form></center>");
          
            if (LEDON4)
            { 
              client.print ("<center><font color='green' size='3'> ON </center>");
            } 
            else 
            { 
             client.print ("<center><font color='red' size = '3'> OFF </center>");
            }
            client.println F("<font color='black' 
");
                      
           client.println F("</body></html>");
          readString="";     //clearing string for next read
          client.stop();    //stopping client
          
 
 }
 
void SendAuthentificationpage(EthernetClient &client)
{
          client.println("HTTP/1.1 401 Authorization Required");
          client.println("WWW-Authenticate: Basic realm=\"Secure Area\"");
          client.println("Content-Type: text/html");
          client.println("Connnection: close");
          client.println();
          client.println("<!DOCTYPE HTML>");
          client.println("<HTML>  <HEAD>   <TITLE>Error</TITLE>");
          client.println(" </HEAD> <BODY><H1>401 Unauthorized.</H1></BODY> </HTML>");
}

char linebuf[80];
int charcount=0;
boolean authentificated=false;

void loop() {
  // listen for incoming clients
  EthernetClient client = server.available();
  if (client) {
    
    memset(linebuf,0,sizeof(linebuf));
    charcount=0;
    authentificated=false;
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        linebuf[charcount]=c;
        if (charcount<sizeof(linebuf)-1) charcount++;
        
        // 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) {
          if (authentificated)
            SendOKpage(client);
          else
            SendAuthentificationpage(client);  
          break;
        }
        if (c == '\n') {
          // you're starting a new line
          currentLineIsBlank = true;
          if (strstr(linebuf,"Authorization: Basic")>0 && strstr(linebuf,"cGhwOm5laW4=")>0) 
            authentificated=true;
          memset(linebuf,0,sizeof(linebuf));
          charcount=0;
        } 
        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();
    
  }
}

You're writing to LEDs, not relays.

Why not debug a single device, and then expand the code?

void SendOKpage(EthernetClient &client)
   {    
   
  
     char c = client.read();
      if (readString.length() < 30)     //read char by char HTTP request
      {
        readString.concat(c);    //store characters to string 
        //-----readString.append(c);

      }      

       if (c == '\n') {   //if HTTP request has ended
          //------------LED 1------------------------------------------------------------------------
           if (readString.substring(6,11) == "L1=ON")

An any given call, you read one character and store it. Then, you expect that there are at least 11 characters in the String.

That might be a reasonable assumption, if this function was the only one reading client data and the function was called often enough.

  EthernetClient client = server.available();
  if (client) {
    
    memset(linebuf,0,sizeof(linebuf));
    charcount=0;
    authentificated=false;
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();

Oh well, so much for that first assumption...

        if (c == '\n' && currentLineIsBlank) {
          if (authentificated)
            SendOKpage(client);

and, so much for the second assumption.