das gleich gilt natürlich für das echo in der 3ten zeile und auch nochmal weiter unten ...
echo darf keinen zeilenumbruch haben
es sollte so aussehen
echo "<html><head></head><body><table>"; (abgeschlossene zeile)
wenn du im generierten quelltext die umbrüche haben willst siehe bei dir oben
dann halt so
echo "<html>\n<head>\n</head>\n";
\n steht für NeueZeile