Connexion à une base MySQL
Classes recquises :
Initialisation de la class.
Visibilité | Nom | Description |
---|---|---|
public | connect | Connexion à la base |
public | close | Déconnexion de la base |
Visibilité | Nom | Description |
---|---|---|
public | getResource | Retourne la ressource de connexion |
Création
Ajout de quelques testes dans la méthode connect()
require_once 'AConnectionBasic.php'; require_once 'IConnection.php'; /** * Connexion à une base MySQL * @package com.neolao * @subpackage connection * @author neolao <neo@neolao.com> * @version 1.1 (31/05/2005) * @link http://resources.neolao.com/php/classes/connection/connectionmysql */ class ConnectionMySQL extends AConnectionBasic implements IConnection{ // ----------------------------- CONSTANTES -------------------------------- // ----------------------------- VARIABLES --------------------------------- /** * Le serveur de base de données * @var string */ private $STRserver; /** * Le nom de la base de données * @var string */ private $STRdatabase; /** * L'identifiant de connexion * @var string */ private $STRlogin; /** * Le mot de passe * @var string */ private $STRpassword; // ----------------------------- EVENEMENTS -------------------------------- /*===================== CONSTRUCTEUR & DESCTRUCTEUR ======================*/ /*========================================================================*/ /** * Initialisation de la class * @param string $server Le serveur de base de données * @param string $database Le nom de la base de données * @param string $login L'identifiant de connexion * @param string $password Le mot de passe */ function ConnectionMySQL($server, $database, $login=null, $password=null){ $this->STRserver = $server; $this->STRdatabase = $database; if(!is_null($login) && !is_null($password)){ $this->STRlogin = $login; $this->STRpassword = $password; $this->connect(); } } /** * Destruction de la class */ function __destruct(){ } /*=============== FIN = CONSTRUCTEUR & DESCTRUCTEUR = FIN ================*/ /*========================================================================*/ /*=========================== METHODES PRIVEES ===========================*/ /*========================================================================*/ /*===================== FIN = METHODES PRIVEES = FIN =====================*/ /*========================================================================*/ /*============================ GETTER SETTER ============================*/ /*========================================================================*/ /*====================== FIN = GETTER SETTER = FIN ======================*/ /*========================================================================*/ /*========================== METHODES PUBLIQUES ==========================*/ /*========================================================================*/ /** * Connexion à la base * @return bool true si la connexion a réussi, sinon false */ public function connect(){ $argsTotal = func_num_args(); // Nombre d'arguments $argsList = func_get_args(); // Liste des arguments $server = $argsList[0]; $database = $argsList[1]; $login = $argsList[2]; $password = $argsList[3]; $result = false; if(!is_null($server)){ $this->STRserver = $server; } if(!is_null($database)){ $this->STRdatabase = $database; } if(!is_null($login)){ $this->STRlogin = $login;} if(!is_null($password)){ $this->STRpassword = $password; } if(!is_null($this->STRserver) && !is_null($this->STRdatabase) && !is_null($this->STRlogin) && !is_null($this->STRpassword)){ if($this->RSCconnection){ // Si la ressource existe déjà, on se déconnecte $this->close(); } // Tentative de connexion au serveur $this->RSCconnection = @mysql_connect($this->STRserver, $this->STRlogin, $this->STRpassword); if($this->RSCconnection !== false){ // La connexion avec le serveur est établie // Tentative de connexion à la base $result = @mysql_select_db($this->STRdatabase, $this->RSCconnection); } } return $result; } /** * Déconnexion de la base */ public function close(){ mysql_close($this->RSCconnection); } /*==================== FIN = METHODES PUBLIQUES = FIN ====================*/ /*========================================================================*/ }