Prima due consigli:

Metti la connessione al db DOPO il check di sessione.
Nel check controlla sempre (prima della query) che la variabile di sessione sia settata.

Poi...non capisco quelle parentesi graffe. Forse è un metodo che non ho mai usato...a cosa servono?