Table des matières

com.neolao.connection.ConnectionMySQL

Connexion à une base MySQL

Classes recquises :

Constructeur

Initialisation de la class.

Méthodes

Visibilité Nom Description
public connect Connexion à la base
public close Déconnexion de la base

Méthodes héritées

Visibilité Nom Description
public getResource Retourne la ressource de connexion

Change log

[10/03/2005] Version 1.0

Création

[31/05/2005] Version 1.1

Ajout de quelques testes dans la méthode connect()

Source

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 ====================*/
	/*========================================================================*/
}