Pour partir sur de bonnes bases, le register_global à on c'est une hérésie
Deuxième chose, masquer des erreurs ne les corrigeant pas, il serait préférable de laisser le error_reporting à E_ALL et de corriger pour ne plus avoir d'erreur (ensuite sur un site en production, là on passe à 0 )
Donc tester l'existence d'une variable avant de s'en servir, gérer les cas d'erreur possibles à attendre (connexion à la bd foireuse...)...