Hola:
En pruebas, yo suelo ver los parámetros envíados a un php, leyendo la variable $_POST, y si es get leyendo la url...
En tu ejemplo asignas con php a un control hidden un valor (entre comillas), y en la función javascript haces una asignación sin entrecomillar (innecesario)... revisa esos detalles... y no dudes en revisar el código fuente del navegador, y usar su consola.
Saludos