se lo provi in locale, devi chiudere il broswer per cancellare la sessione, senò si sovrappongono i valori, prova anche a metterre un regenerate_session_id(); prima dell'inizio della sessione.

P.S.
Spero che sia utile, dato che sono un principiante!!!