hai tutti i nomi delle variabili sbagliati sui controlli
per esempio: $fname tu la hai chiamata $first_name...
correggi il codice e abilita tutte le segnalazioni di errore quando sviluppi, almeno ti rendi conto di cosa modificare (ci saranno un bel po' di notice su variabili che non esistono)