Bonjour à toutes et à tous,

Lors du premier test de mise en ligne, j'obtiens les messages suivants:
Strict Standards: date(): We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /homepages/36/d231885863/htdocs/proginet/appGenealium/libraries/defines.php on line 25

Warning: Cannot modify header information - headers already sent by (output started at /homepages/36/d231885863/htdocs/proginet/appGenealium/libraries/defines.php:25) in
/homepages/36/d231885863/htdocs/proginet/appGenealium/logout.php on line 21

Warning: Cannot modify header information - headers already sent by (output started at /homepages/36/d231885863/htdocs/proginet/appGenealium/libraries/defines.php:25) in
/homepages/36/d231885863/htdocs/proginet/appGenealium/logout.php on line 22

Warning: Cannot modify header information - headers already sent by (output started at /homepages/36/d231885863/htdocs/proginet/appGenealium/libraries/defines.php:25) in
/homepages/36/d231885863/htdocs/proginet/appGenealium/logout.php on line 24
La ligne 25 du code complet est la ligne 9 de l'extrait ci-dessous.

et le code du fichier defines.php
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
require('config.php');
 
// Chemins
// ...
 
// Paramètres divers
define('LANGUAGES_TABLE', "lst_languages");
date_default_timezone_set('Europe/Berlin');
define('TODAY_SQL', date('Y-m-d'));
// ...
et le fichier config.php inclus dans defines.php
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Chemins
define('URL_SITE', "http://genealium.proginet.eu/");
 
// Base de données
// ...
 
define('IS_LOCAL', false);
 
// Consignes de gestion des erreurs
// Afficher les erreurs à l'écran
//ini_set('display_errors', 1);
// Enregistrer les erreurs dans un fichier de log
ini_set('log_errors', 1);
// Nom du fichier qui enregistre les logs (attention aux droits à l'écriture)
ini_set('error_log', URL_SITE . 'LOG/log_error_php.txt');
// Afficher les erreurs et les avertissements
error_reporting(E_ALL);

J'ai ajouté la ligne date_default_timezone_set() ce qui a résolu (provisoirement) la première erreur et consécutivement les 3 autres.

Mes questions

1) Dans les consignes de gestion des erreurs, pourquoi les erreurs s'affichent à l'écran au lieu de s'enregistrer dans le fichier log.
2) Comment connaître et sélectionner automatiquement le fuseau de l'utilisateur ?