Per poter interpretare php, la tua pagina deve terminare con .php. Ora: questo comportamento si potrebbe pure cambiare, ma farlo ha poco senso. Se non vuoi cambiare l'estensione da .js a .php, allora limitati a dichiarare la variabile nella pagina php (con var id_utente = <?php ... ?> ) e subito dopo includi il tuo file .js che potrà fare uso della variabile prima dichiarata. In breve: dichiara quella variabile altrove.so che js è lato client e php lato server però ho questa necessità ovvero non vorrei trasformare il file .js in php vorrei mantenerlo .js
Per il resto, mi sembra che tu lo stia facendo bene. In quel modo però, sei hai display_errors abilitato, $_SESSION[id] comporta un avviso che potrebbe invalidare il js. Sostituiscilo con $_SESSION['id'] e riprova. O se è un solo dato/numero, potrebbe essere sufficiente
senza tante paturnie.codice:var id_utente = <?php echo (int) $_SESSION['id']; ?>;