Fix: Correction de l'chec de la fonction mysql_connect avec certaines versions de mysql

This commit is contained in:
Laurent Destailleur
2005-04-12 01:01:20 +00:00
parent 6f0bf9ab71
commit d383bdefb5
2 changed files with 26 additions and 13 deletions

View File

@@ -79,13 +79,22 @@ class DoliDb
\param name nom de la database
\return int 1 en cas de succ<63>s, 0 sinon
*/
function DoliDb($type='mysql', $host, $user, $pass, $name='', $newlink=0)
function DoliDb($type='mysql', $host, $user, $pass, $name='')
{
global $conf;
$this->transaction_opened=0;
//print "Name DB: $host,$user,$pass,$name<br>";
if (! $host)
{
$this->connected = 0;
$this->ok = 0;
dolibarr_syslog("DoliDB::DoliDB : Erreur Connect, wrong host parameters");
return $this->ok;
}
// Essai connexion serveur
$this->db = $this->connect($host, $user, $pass, $newlink);
$this->db = $this->connect($host, $user, $pass, $name);
if ($this->db)
{
@@ -139,12 +148,13 @@ class DoliDb
\param host addresse de la base de donn<6E>es
\param login nom de l'utilisateur autoris
\param passwd mot de passe
\param name nom de la database (ne sert pas sous mysql, sert sous pgsql)
\return resource handler d'acc<63>s <20> la base
*/
function connect($host, $login, $passwd, $newlink=0)
function connect($host, $login, $passwd, $name)
{
$this->db = @mysql_connect($host, $login, $passwd, $newlink);
$this->db = @mysql_connect($host, $login, $passwd);
//print "Resultat fonction connect: ".$this->db;
return $this->db;
}
@@ -153,7 +163,7 @@ class DoliDb
\brief Cr<43>ation d'une nouvelle base de donn<6E>e
\param database nom de la database <20> cr<63>er
\return resource resource d<>finie si ok, null si ko
\remarks Ne pas utiliser la fonction mysql_create_db qui est deprecated
\remarks Ne pas utiliser les fonctions xxx_create_db (xxx=mysql, ...) car elles sont deprecated
*/
function create_db($database)
@@ -178,8 +188,9 @@ class DoliDb
/**
\brief Ouverture d'une connection vers une database.
\param host Adresse de la base de donn<6E>es
\param login Nom de l'utilisateur autoris
\param login Nom de l'utilisateur autoris<EFBFBD>
\param passwd Mot de passe
\param name Nom de la database
\return resource handler d'acc<63>s <20> la base
*/

View File

@@ -89,6 +89,7 @@ class DoliDb
{
$this->connected = 0;
$this->ok = 0;
dolibarr_syslog("DoliDB::DoliDB : Erreur Connect");
}
// Si connexion serveur ok et si connexion base demand<6E>e, on essaie connexion base
@@ -103,6 +104,7 @@ class DoliDb
{
$this->database_selected = 0;
$this->ok = 0;
dolibarr_syslog("DoliDB::DoliDB : Erreur Select_db");
}
}
else
@@ -136,7 +138,7 @@ class DoliDb
\param host addresse de la base de donn<6E>es
\param login nom de l'utilisateur autoris
\param passwd mot de passe
\param name nom de la database
\param name nom de la database (ne sert pas sous mysql, sert sous pgsql)
\return resource handler d'acc<63>s <20> la base
*/
@@ -473,7 +475,7 @@ class DoliDb
return $code;
}
}
return DB_ERROR;
return 'DB_ERROR';
}
/**
@@ -488,7 +490,7 @@ class DoliDb
/**
\brief R<>cup<75>re l'id gen<65>r<EFBFBD> par le dernier INSERT.
\param tab Nom de la table concern<72>e par l'insert
\param tab Nom de la table concern<72>e par l'insert. Ne sert pas sous MySql mais requis pour compatibilit<69> avec Postgresql
\return int id
*/