On the sender:
char s2 = Serial.read();
Is executed on every pass through loop, even if there is nothing to read. Why? s2 is never used.
You really need to discover the wonders of Tools + Auto Format. That code wandering all over the page is a nightmare to read.
The sender sends a nothing but a 'D'. The receiver expects nothing but a 'h'. It is unlikely that a match will ever be detected.