Il est évident qu'en PHP, une "variable globale" ne passe pas magiquement d'une page à l'autre ... tu dois donc la faire figurer soit dans le $_POST (par exemple en la mettant en hidden dans un formulaire qui va à la page de destination où tu as besoin de la variable), soit en $_GET (dans l'URL, donc pas de variables "sensibles" ), soit en $_COOKIE, soit en $_SESSION, ce que tu as fait, et c'est pas un problème c'est même plutôt normal...
( Je dois probablement oublier un "soit" )
Bref, tu as trouvé ta propre solution