Mammouth du PHP |
843 Messages
09 sept. 2007, 21:58
exemple:
voici ma classe (fichier mes_classes.php):
/**
* classe de connection aux base de données MySQL
*
* @name brts_connecteur_db
* @package brts_system
* @subpackage server_sql
*/
// CONNEXION SERVER MySQL: $connecteur_db = new brts_connecteur_db($data_host_db, $data_user_db, $data_pass_db, $data_beroots_db, $data_client_db);
// SELECTION DB: $connecteur_db->select_db($identifiant_db);
// REQUETE: $result = $connecteur_db->query($query);
// DECONNECTION SERVER MySQL: $connecteur_db->close();
class brts_connecteur_db
{
/**
* infos de connection au server MySQL
*
* @access private
* @var array
*/
private $infos_server;
/**
* nom de db beroots
*
* @access private
* @staticvar var
*/
private $beroots_db;
/**
* nom de db client
*
* @access private
* @staticvar var
*/
private $client_db;
/**
* connection active au server MySQL
*
* @access private
* @var ressource
*/
private $link;
/**
* definition des propriété de la classe et connection au server MySQL
*
* @name constructeur
* @access public
* @param var $host_db adresse du serveur MySQL
* @param var $user_db login du server MySQL
* @param var $pass_db mot de pass server MySQL
* @param var $beroots_db nom de la base de données BEROOTS
* @param var $client_db non de la base de données CLIENT
*/
public function __construct($host_db, $user_db, $pass_db, $beroots_db, $client_db)
{
$this->infos_server['host_db'] = $host_db;
$this->infos_server['user_db'] = $user_db;
$this->infos_server['pass_db'] = $pass_db;
$this->beroots_db = $beroots_db;
$this->client_db = $client_db;
$this->connect();
}
/**
* effacement des propriétés de la classe
*
* @name Destructeur
* @access private
* @see close()
*/
private function __destruct()
{
unset($this->infos_server['host_db']);
unset($this->infos_server['user_db']);
unset($this->infos_server['pass_db']);
unset($this->beroots_db);
unset($this->client_db);
unset($this->link);
}
/**
* etablissement d'une connexion au server MySQL
*
* @name connect
* @access private
* @see __construct()
*/
private function connect()
{
$this->link = mysql_connect($this->infos_server['host_db'], $this->infos_server['user_db'], $this->infos_server['pass_db']) or die('Erreur SQL !<br />'.$this->link.'<br />'.mysql_error());
}
/**
* fermeture de la connexion au server MySQL et appel du destructeur
*
* @name close
* @access public
*/
public function close()
{
mysql_close($this->link);
$this->__destruct();
}
/**
* selection de base de données
*
* @name select_db
* @access public
* @param string $identifiant_db identifiant de base de données (beroots ou client)
*/
public function select_db($identifiant_db)
{
if($identifiant_db == 'beroots')
{
$use_db = $this->beroots_db;
}
elseif($identifiant_db == 'client')
{
$use_db = $this->client_db;
}
$selected_db = mysql_select_db($use_db, $this->link) or die('Erreur SQL !<br />'.$selected_db.'<br />'.mysql_error());
}
/**
* execution d'une requete MySQL
*
* @name query
* @access public
* @param string $query requete sql
* @return float $result_mysql
*/
public function query($query)
{
$result_mysql = mysql_query($query) or die('Erreur SQL !<br />'.$result_mysql.'<br />'.mysql_error());
return $result_mysql;
}
}
voici une page quelconque avec l'appel:
<?php
require(../librairies/php/mes_classes.php);
$connecteur_db = new brts_connecteur_db($data_host_db, $data_user_db, $data_pass_db, $data_beroots_db, $data_client_db);
$connecteur_db->select_db('beroots');
$result = $connecteur_db->query("SELECT * FROM `system_table_beroots` WHERE id = 1");
$connecteur_db->close();
// traitement du resultat de sql...
?>
le message d'erreur:
Warning: Call to private brts_connecteur_db::__destruct() from context '' during shutdown ignored in Unknown on line 0
voila j'espère que cela devrai suffir

:: contactez moi par MP ::
NON au language SMS sur les forums 