Pues en el código que muestras no se ve por ningún lado $_POST o de perdida $_REQUEST, ni en el primer código ni en la función TraerMenu(), aparte, en el primer código tienes lo siguiente:
Código PHP:
Ver original$row = ValidaSesiones($opcion, $usuario, $password, $login);
De donde sale $opciones, $usuario, $password y $login? por ningún lado se ve, así no se te puede ayudar, porque solo andamos adivinando de donde bienen las variables, al menos eso espero y que no estes programando bajo registre_globals en ON...