Vous êtes ici Codes PHP et MySQL > Classes > Classe de connexion à Mysql en PHP5

 

Classe de connexion à Mysql en PHP5

Il s'agit d'une petite classe en PHP5 qui permet de géré simplement les requêtes SQL pour MySQL.
 
crocxx
Site de l'auteur voir
[4] sources en PHP voir
Code vu 9805 fois
Enregistré le 22 Fév 2008
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Classe de connexion à Mysql en PHP5
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Classe de connexion à Mysql en PHP5                       */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts344-PHP.htm              */
/* Auteur         : crocxx                                                    */
/* Date édition   : 22 Fév 2008                                               */
/* Website auteur : http://www.zone-webmasters.net                            */
/*                                                                            */
/******************************************************************************/


/**
* Gestion des erreurs avec les exeptions
*/ 

class Erreur  extends Exception {
    
    public function __construct($Msg) {
        parent :: __construct($Msg);
    }
    
    public function RetourneErreur() {
        $msg  '<div><strong>' $this->getMessage() . '</strong>';
        $msg .= ' Ligne : ' $this->getLine() . '</div>';
        return $msg;
    }
}

class Mysql
{
    private
        $Serveur     '',
        $Bdd         '',
        $Identifiant '',
        $Mdp         '',
        $Lien        '',    
        $Debogue     true,    
        $NbRequetes  0;



/**
* Constructeur de la classe
* Connexion aux serveur de base de donnée et sélection de la base
*
* $Serveur     = L'hôte (ordinateur sur lequel Mysql est installé)
* $Bdd         = Le nom de la base de données
* $Identifiant = Le nom d'utilisateur
* $Mdp         = Le mot de passe
*/ 
    public
        function __construct($Serveur 'localhost'$Bdd 'base'$Identifiant 'root'$Mdp '') 
        {
            $this->Serveur     $Serveur;
            $this->Bdd         $Bdd;
            $this->Identifiant $Identifiant;
            $this->Mdp         $Mdp;

            $this->Lien=mysql_connect($this->Serveur$this->Identifiant$this->Mdp);
             
            if (!$this->Lien && $this->Deboguethrow new Erreur ('Erreur de connexion au serveur MySql!!!');                
                
            $Base mysql_select_db($this->Bdd,$this->Lien);
             
            if (!$Base && $this->Deboguethrow new Erreur ('Erreur de connexion à la base de donnees!!!');
        }

/**
* Retourne le nombre de requêtes SQL effectué par l'objet
*/         
    public
        function RetourneNbRequetes() 
        {
            return $this->NbRequetes;
        }



/**
* Envoie une requête SQL et récupère le résultât dans un tableau pré formaté
*
* $Requete = Requête SQL
*/ 
    public
        function TabResSQL($Requete)
        {
            $i 0;
    
            $Ressource mysql_query($Requete,$this->Lien);
            
             $TabResultat=array();

             if (!$Ressource and $this->Deboguethrow new Erreur ('Erreur de requête SQL!!!');
            while ($Ligne mysql_fetch_assoc($Ressource))
            {
                foreach ($Ligne as $clef => $valeur$TabResultat[$i][$clef] = $valeur;
                $i++;
            }

            mysql_free_result($Ressource);
            
            $this->NbRequetes++;
            
            return $TabResultat;
        }
/**
* Retourne le dernier identifiant généré par un champ de type AUTO_INCREMENT
*
*/ 
    public
        function DernierId()
        {    
            return mysql_insert_id($this->Lien);
        }
/**
* Envoie une requête SQL et retourne le nombre de table affecté
*
* $Requete = Requête SQL
*/ 
    public
        function ExecuteSQL($Requete)
        {
            $Ressource mysql_query($Requete,$this->Lien);
            
             if (!$Ressource and $this->Deboguethrow new Erreur ('Erreur de requête SQL!!!');
            
            $this->NbRequetes++;
            $NbAffectee mysql_affected_rows();
            
            return $NbAffectee;            
        }        
}
?>



<?php
/**
* Utilisation de la classe
*/ 

 //Instanciation de la classe

try
{
    $Mysql = new Mysql($Serveur 'localhost'$Bdd 'base'$Identifiant 'root'$Mdp ''); 
}
catch (Erreur $e) {
    echo $e -> RetourneErreur();
} 

 //Envoie d'une requête SQL


try
{
    $Resulats $Mysql->TabResSQL('SELECT Champ1,Champ2 FROM table');
}
catch (Erreur $e) {
    echo $e -> RetourneErreur();
} 

 //Utilisation des résultats


foreach ($Resulats as $Valeur)
{
    echo $Valeur['Champ1'];
    echo $Valeur['Champ2'];
}


?>

 

Fonctions du code

: Ouvre une connexion à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Sélectionne une base de données MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
: Crée un tableau - (PHP 4, PHP 5)
: Lit une ligne de résultat MySQL dans un tableau associatif - (PHP 4 >= 4.0.3, PHP...
: Libère le résultat de la mémoire - (PHP 4, PHP 5, PECL mysql:1.0)
: - (PHP 4, PHP 5, PECL mysql:1.0)
: - (PHP 4, PHP 5, PECL mysql:1.0)
: Affiche une chaîne de caractères - (PHP 4, PHP 5)
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Librairie PHP

Connexion

 
 

Classes

 
 

PHP

 
 
 
 
    Offres d'emploi

Plus de 500 offres d'emploi PHP/MySQL

Offres d'emploi
 
    Editeur PHP
 
        Publicité