Hola nuevo.
Cuando trabajes parte de tu código en PHP y parte en JavaScript, debes tener siempre en mente el momento de ejecución de cada uno de ellos.
PHP se ejecuta "antes" de que la página sea despachada, en ese momento tendrán sentido todas las variables del tipo $var que tengas, se ejecutarán todos los comandos de interacción con bases de datos, en fin, todo lo que esté dentro de los tags <? y ?>.
Al momento de ser despachada la página, esta no contiene ninguna referencia a los tags de PHP y mucho menos a sus variables. Toda referencia a una variable del tipo $var, es un error seguro.
¿Como interactuo entonces con PHP?
Volviendo a la fase de despacho. Es decir, si como resultado de un script JavaScript necesitas darle un valor a una variable, entonces llama a una página PHP que tenga el código que quieras ejecutar. Puedes valerte para eso de una recarga sobre la página actual (usando location.href = "asigna.php" por ejemplo) o llamando a un popup PHP que haga lo que requieres y despliegue un mensajito, por ejemplo.
Otra manera mas elaborada es recargar la página actual enviando un elemento HTML con el valor que necesitas. Yo por ejemplo uso mucho tags hidden que se llaman igual que las variables que necesito y hago un submit.
Por ejemplo:
Código PHP:
<form action="procesa.php">
<input type="hidden" name="variable">
</form>
Si con un script de JavaScript alteras el contenido de "variable", entonces al hacer un submit, tendrás del lado de PHP a $variable con el valor que requieres.
Me imagino que mucho de lo que he escrito lo sabes, sin embargo quise ser minucioso por si acaso.
Saludos.