diff --git a/htdocs/lib/databases/mysql.lib.php b/htdocs/lib/databases/mysql.lib.php index 1586a53dc7a..a539885576a 100644 --- a/htdocs/lib/databases/mysql.lib.php +++ b/htdocs/lib/databases/mysql.lib.php @@ -118,15 +118,25 @@ class DoliDb */ function DoliDb($type='mysql', $host, $user, $pass, $name='', $newlink=0) { - global $conf,$langs; - $conffile = DOL_DOCUMENT_ROOT."/conf/conf.php"; - if (file_exists($conffile)) { - include($conffile); - $this->forcecharset=$character_set_database; - $this->forcecollate=$collation_connection; - $this->db_user=$dolibarr_main_db_user; - } - $this->transaction_opened=0; + global $conf,$langs; + + /* Ce test est inutile. En effet, si DOL_DOCUMENT_ROOT est défini, cela signifie */ + /* obligatoirement que le fichier conf a deja été chargée puisque cette constante est */ + /* definie a partir du contenu du fichier conf.php */ + /* Et toutes les infos sont chargés dans l'objet conf */ + /* + if (file_exists($conffile)) { + include($conffile); + $this->forcecharset=$character_set_database; + $this->forcecollate=$collation_connection; + $this->db_user=$dolibarr_main_db_user; + } + */ + $this->forcecharset=$conf->character_set_client; + $this->forcecollate=$conf->collation_connection; + $this->db_user=$conf->db->user; + + $this->transaction_opened=0; if (! function_exists("mysql_connect")) { diff --git a/htdocs/lib/databases/mysqli.lib.php b/htdocs/lib/databases/mysqli.lib.php index 78f8f62751e..87bba09c034 100644 --- a/htdocs/lib/databases/mysqli.lib.php +++ b/htdocs/lib/databases/mysqli.lib.php @@ -119,13 +119,22 @@ class DoliDb { global $conf,$langs; - $conffile = DOL_DOCUMENT_ROOT."/conf/conf.php"; + /* Ce test est inutile. En effet, si DOL_DOCUMENT_ROOT est défini, cela signifie */ + /* obligatoirement que le fichier conf a deja été chargée puisque cette constante est */ + /* definie a partir du contenu du fichier conf.php */ + /* Et toutes les infos sont chargés dans l'objet conf */ + /* if (file_exists($conffile)) { include($conffile); $this->forcecharset=$character_set_database; $this->forcecollate=$collation_connection; $this->db_user=$dolibarr_main_db_user; } + */ + $this->forcecharset=$conf->character_set_client; + $this->forcecollate=$conf->collation_connection; + $this->db_user=$conf->db->user; + $this->transaction_opened=0; //print "Name DB: $host,$user,$pass,$name
"; diff --git a/htdocs/lib/databases/pgsql.lib.php b/htdocs/lib/databases/pgsql.lib.php index b4a2e8374c7..2d1e9e55b85 100644 --- a/htdocs/lib/databases/pgsql.lib.php +++ b/htdocs/lib/databases/pgsql.lib.php @@ -75,12 +75,23 @@ class DoliDb function DoliDb($type='pgsql', $host, $user, $pass, $name='') { global $conf,$langs; - $conffile = DOL_DOCUMENT_ROOT."/conf/conf.php"; - if (file_exists($conffile)) { + + /* Ce test est inutile. En effet, si DOL_DOCUMENT_ROOT est défini, cela signifie */ + /* obligatoirement que le fichier conf a deja été chargée puisque cette constante est */ + /* definie a partir du contenu du fichier conf.php */ + /* Et toutes les infos sont chargés dans l'objet conf */ + /* + if (file_exists($conffile)) { include($conffile); $this->forcecharset=$character_set_database; + $this->forcecollate=$collation_connection; $this->db_user=$dolibarr_main_db_user; } + */ + $this->forcecharset=$conf->character_set_client; + $this->forcecollate=$conf->collation_connection; + $this->db_user=$conf->db->user; + $this->transaction_opened=0; //print "Name DB: $host,$user,$pass,$name
"; diff --git a/htdocs/master.inc.php b/htdocs/master.inc.php index c6e949ef79c..7448b4916ef 100644 --- a/htdocs/master.inc.php +++ b/htdocs/master.inc.php @@ -105,7 +105,7 @@ if ($dolibarr_main_db_encrypted_pass) $dolibarr_main_db_pass = dolibarr_decode($ require_once(DOL_DOCUMENT_ROOT."/conf/conf.class.php"); $conf = new Conf(); -// On defini tous les parametres de conf +// Identifiant propres au serveur base de donnee $conf->db->host = $dolibarr_main_db_host; $conf->db->name = $dolibarr_main_db_name; $conf->db->user = $dolibarr_main_db_user; @@ -114,10 +114,14 @@ if (! isset($dolibarr_main_db_type) && ! $dolibarr_main_db_type) $dolibarr_main_ $conf->db->type = $dolibarr_main_db_type; if (! isset($dolibarr_main_db_charset) && ! $dolibarr_main_db_charset) $dolibarr_main_db_charset='ISO-8859-1'; // Pour compatibilite avec anciennes configs, si non defini, on prend 'mysql' $conf->db->character_set=$dolibarr_main_db_charset; -if (! isset($character_set_client) || ! $character_set_client) $character_set_client='ISO-8859-1'; -$conf->character_set_client=$character_set_client; if (! isset($dolibarr_main_db_prefix) || ! $dolibarr_main_db_prefix) $dolibarr_main_db_prefix='llx_'; $conf->db->prefix = $dolibarr_main_db_prefix; +// Identifiant propre au client +if (! isset($character_set_client) || ! $character_set_client) $character_set_client='ISO-8859-1'; +$conf->character_set_client=$character_set_client; +if (! isset($collation_connection) || ! $collation_connection) $collation_connection='latin1_swedish_ci'; +$conf->collation_connection=$collation_connection; +// Identifiant autres $conf->main_authentication = $dolibarr_main_authentication; // Defini prefix