prova a fare un var_dump(); sulla sessione e vedi cosa ti restituisce!
per il resto mi sembra scritto tutto correttamente