lechorui, ese tipo de query es perfectamente válido, hace tiempo que en mySQL existen los INSERT INTO SELECT y te invito a que visites
su página del manual para que comprendas su funcionamiento.
LeoIglesias, la verdad es que es muy raro lo que comentas.. lo que funciona en local deberia funcionar igualmente en el server, siempre y cuando las versiones del mySQL sean similares.
Yo te recomiendo que utilices la funcion mysql_error(); para que te asegures que el query se ejecutó exitosamente o si abortó por algún motivo. Ya luego nos cuentas si averiguaste algo más.
Saludos.