Vous avez développé votre propre site. Vous en êtes très fier. Pourtant vous n’êtes pas à l’abris de bugs, de mauvais appels de fonction, d’erreurs à l’exécution (par exemple : base de données injoignable), etc Par défaut, PHP affiche les erreurs. C’est l’option de configuration "display_errors = on" du fichier php.ini. Pratique en environnement de développement mais à proscrire en production. À moins que vous ne souhaitiez que tout le monde soit au courant de :

PHP Warning:  mysql_connect(): Access denied for user ‘user’@'localhost’ (using password: YES) in …

Ainsi en production, il faut mettre "display_errors = off". Mais alors comment savoir qu’il y a eu des erreurs ? Tout simplement en les loggant (archivant en vrai français).


log_errors = on error_log = /chemin_ou_logger/error.log

Vous n’aurez qu’à consulter régulièrement le fichier error.log pour connaître les erreurs survenues en production. Mieux, vous pouvez profiter de ce système pour y stocker vos propres messages.

 

if (! mysql_connect (...))
{
  trigger_log ('erreur de connexion');
  header ('Location: /pageerreur.php');
}

 

Tous les messages passés à la fonction trigger_log seront sauvés dans le fichier error.log. la suite : logger les erreurs en base de données pour les consulter facilement (interface fournie)