Il NOTICE ti indica che quello che richiedi (indice di array o variabile) non esiste. Non e' un errore formale di parser perche' php in qualche modo si adegua, ma e' un errore di programmazione. Si deve programmare NOTICE free. Mettere la @ davanti alle funzioni equivale allo svitare la lampadina che segnala un allarme.

Non si accendera' piu' ma il problema permane. Un domani potresti essere costretto a mettere mano a tutti i tuoi script perche' quel NOTICE di oggi potrebbe invece essere un errore di parser nella prossima release.

Per evitare il NOTICE si utilizza ISSET().

IF(!isset($_POST['var'])) $_POST['var'] = '';


Per quanto riguarda l'errore sul browser, IE il max fault tollerant di tutti. Infatti se ha avuto ed ha ancora buchi e' perche' interpreta anche gli errori. Potrebbe quindi essere il javascript disabilitato sul browser.