diff --git a/htdocs/lib/mysql.lib.php b/htdocs/lib/mysql.lib.php
index 638c747764a..a71a1088cba 100644
--- a/htdocs/lib/mysql.lib.php
+++ b/htdocs/lib/mysql.lib.php
@@ -26,55 +26,68 @@ class DoliDb {
var $db, $results, $ok, $connected, $database_selected;
Function DoliDb($type = 'mysql', $host = '', $user = '', $pass = '', $name = '')
+ // Se connecte au serveur et éventuellement à une base (si spécifié)
+ // Renvoie 1 en cas de succès, 0 sinon
{
global $conf;
- // print "Name DB : $host, $user, $pass, $name
";
+ if ($host == '')
+ {
+ $host = $conf->db->host;
+ }
+
+ if ($user == '')
+ {
+ $user = $conf->db->user;
+ }
+
+ if ($pass == '')
+ {
+ $pass = $conf->db->pass;
+ }
+
+ if ($name == '')
+ {
+ $name = $conf->db->name;
+ }
+
+ //print "Name DB: $host,$user,$pass,$name
";
- if ($host == '')
- {
- $host = $conf->db->host;
- }
-
- if ($user == '')
- {
- $user = $conf->db->user;
- }
-
- if ($pass == '')
- {
- $pass = $conf->db->pass;
- }
-
- if ($name == '')
- {
- $name = $conf->db->name;
- }
+ // Essai connexion serveur
+ $this->db = $this->connect($host, $user, $pass);
+ if ($this->db)
+ {
+ $this->connected = 1;
+ $this->ok = 1;
+ }
+ else
+ {
+ $this->connected = 0;
+ $this->ok = 0;
+ }
- $this->db = $this->connect($host, $user, $pass);
- if ($this->db)
- {
- $this->connected = 1;
- }
- else
- {
- $this->connected = 0;
- return 0;
- }
-
- $ret = $this->select_db($name);
-
- if ($ret == 1)
- {
- $this->database_selected = 1;
- $this->ok = 1;
- }
- else
- {
- $this->database_selected = 0;
- $this->ok = 0;
- }
- return $ret;
+ // Si connexion serveur ok et si connexion base demandée, on essaie connexion base
+ if ($this->connected && $name) {
+
+ if ($this->select_db($name) == 1)
+ {
+ $this->database_selected = 1;
+ $this->ok = 1;
+ }
+ else
+ {
+ $this->database_selected = 0;
+ $this->ok = 0;
+ }
+
+ }
+ else {
+ // Pas de selection de base demandée, mais tout est ok
+ $this->database_selected = 0;
+ $this->ok = 1;
+ }
+
+ return $this->ok;
}
/*
*
@@ -89,6 +102,7 @@ class DoliDb {
Function connect($host, $login, $passwd)
{
$this->db = @mysql_connect($host, $login, $passwd);
+ //print "Resultat fonction connect: ".$this->db;
return $this->db;
}
/*