A me succede (molto raramente) quando la banda è quasi nulla, quindi naviga talmente lento ch enon interpreta il codice, ma lo vede come un file da scaricare. Stessa cosa vale se il server è stramega intasato (anzi, forse è più probabile questa).

Altrimenti, banalmente, non hai PHP disponibile sull'host
Pero' se dici che l'echo lo prende, allora non saprei...credo sia più probabile come ho detto prima ,una strozzatura sulla banda dell'host. Prova a contattarli per info a riguardo.