Cita: pero al validarlo me da el siguiente error:
Esto, ¿estas intentado validar el codigo PHP en el validador de w3c? Eso no se hace. Lo que tienes que validar es el HTML generado por PHP, no el codigo fuente PHP. Sube ese fichero a tu servidor que soporte PHP, y dile al validador que valide esa URL.
Saludos.