Kodda sorun yok, localde deniyorsan büyük ihtimal ile wamp server kullanıyorsundur, wamp serverin php.ini dosyasında sanırım E_ALL ve E_NOTICE uyarıları yapılandırılmamış, ben olsam wampserveri çöpe atar appserv kullanmaya başlardım, bu aslında bir hata değil bir uyarı adındanda anlaşıldığı gibi, bu uyarıları engellemek için sayfanın başına

error_reporting(E_ALL & ~E_NOTICE);
koy, uyarılar kapanması lazım..