Claro que ha cambiado algo: la configuración de php en ambos hosts.
A decir verdad tu código si está mal, simplemente en el hosting donde te "funcionaba" bien la situación era que tenía desactivado el reporte de errores, por eso no los veías en pantalla.
Sin embargo los errores existen, lee lo siguiente a ver si te ayuda de algo:
http://www.forosdelweb.com/wiki/PHP:...n_line_4%22%3F