SurferTim:
Is this an Uno or Mega? I just took a look at your entire code.You sure are using a lot of SRAM with those constant strings. Maybe you are running out of SRAM? 8K in the Mega, and 2K in the Uno. The Ethernet and SD libraries takes a bunch of that.
You never see this?Serial.print("RAM Livre: ");
Serial.println(freeRam());
You should use the "F" function to user those strings from program memory rather than transferring it into SRAM.Serial.println("This string is transferred to SRAM before printing");
Serial.println(F("This string is printed from program memory"));
Sorry i forgot to say but and using a Mega 2560.
Thanks.