Sarebbe meglio utilizzare i tag [php ] o [code ] per rendere lo script piu' leggibile.

alcuni suggerimenti:

1) usa il tag php esteso: <?php e non <?
2) prima di "convertire a variabile semplice" verifica che sia valorizzato POST.
3) Il while ed il foreach non ti servono visto che al max devi avere solo 1 record in risposta.
4) Se usi $_SESSION non devi registrare le variabili. $_SESSION e' sempre registrato.
5) If(empty(nome) ) sara' sempre TRUE nel senso di assente o vuoto perche' non lo hai mai valorizzato. Quindi dovresti usare: if(empty($_SESSION['nome']))

dai un'occhiata al manuale per quanto riguarda le sessioni:

http://it.php.net/manual/it/ref.session.php