Vous êtes sur la page 1sur 9

Exemple 1

Donc la class : http://www.phpcs.com/code.aspx?ID=23667


<?php
/**********************************************************************************************/
/*******************************class mysql wnn V1*********************************************/
/********************class pour gérer une base de donné mysql**********************************/
/**************class créé pour webnewnet.tk ainsi que
thewod.com*******************************/
/************************Tous droits réserver a Nadim*****************************************/
/***Vous êtes libre d'utiliser cette classe autant que vous le désirez, cependant vous devez
laisser les***/
/*****************************commentaires suivants*******************************************/
echo "<!-- La class mysql wnn a été créé pour www.webnewnet.tk ainsi que www.thewod.com par
Nadim -->";
/**********************************************************************************************/
class mysql
    {
        var $sql_serveur;
        var $sql_utlisateur;
        var $sql_password;
        var $sql_bd;
        var $connection_sql;
        var $select_bd;
        var $resultat;
        var $sql_debug;
        var $connection_verif;
        var $nb_requete;
        var $erreur;
        var $message_erreur;
        
        //constructeur
        function mysql($serveur, $utlisateur, $password, $bd, $debug, $erreur)

1
            {
                $this->sql_serveur = $serveur;
                $this->sql_utilisateur = $utlisateur;
                $this->sql_password = $password;
                $this->sql_bd = $bd;
                $this->sql_debug = $debug;
                $this->message_erreur = $erreur;
                $this->resultat = array();
                $this->connection_verif = 0;
                $this->connection();
            }
                
        //fonction de connection a mysql
        function connection()
            {
                if($this->connection_verif == "0")
                    {
                        $this->connection_sql = @mysql_connect($this->sql_serveur, $this-
>sql_utilisateur, $this->sql_password);
                        if(!$this->connection_sql)
                            {
                                $this->mysql_erreur();
                            }
                        else
                            {
                                $this->selection_bd();
                            }
                    }
            }
        
        //fonction de selection de la base de donnée
        function selection_bd()

2
            {
                $this->select_bd = @mysql_select_db($this->sql_bd, $this->connection_sql);  
                if(!$this->select_bd)
                    {
                        $this->mysql_erreur();
                    }
                else
                    {
                        $this->connection_verif = 1;
                    }
            }
        
        //fonction de déconnexion de la base de donnée
        function deconnexion()
            {
                mysql_close($this->connection_sql);
            }
            
        //fonction d'execution de requête
        function requete($requete, $p)
            {
                $this->resultat[$p] = mysql_query($requete);
                $this->nb_requete++;
                if(!$this->resultat[$p])
                    {
                        $this->mysql_erreur();
                    }
            }
        
        //fontion qui retourne les donnée dans un tableau grace a fetch array
        function resultat($p)
            {

3
                return @mysql_fetch_array($this->resultat[$p]);
            }
        
        //fonction permettant de compter le nombre de resultat trouvé
        function nb_resultat($p)
            {
                return @mysql_num_rows($this->resultat[$p]);
            }
        //function d'affichage des erreur mysql 
        function mysql_erreur()
            {
                if($this->sql_debug == 0)
                    {
                        echo $this->message_erreur;
                    }
                elseif($this->sql_debug == 1)
                    {
                        $this->erreur = @mysql_error($this->connection_sql);
                        $message = "une erreur mysql est survenue : <br /> <form
name='mysql'><textarea rows='15' cols='60'>".$this->erreur."</textarea></form>";
                        echo $message;
                    }
            }
    }
?>  

et son fichier d'aide:

Contenu

Contenu

4
1 - Qu'est-ce que une class
2 - Installation
3 - les fonctions
4 - comment l'utiliser
5 - Exemple
6 - Droit d'utilisation

1 - Qu'est-ce que une class

Une classe est un ensemble de fonctions regroupées en un élément appelé class.


Cette class est a utiliser dans le language PHP et permet d'établir une connection avec une
base de donnée mysql, et ainsi executer des requêtes.

2 - Installation

Cette class est très simple a installer, il suffit soit de faire un


include("mysql.class.php") afin de l'inclure dans votre script php
ou bien vous pouvez simplement copier le contenu dans votre script php,
cependant la première manière qui consiste a inclure est recommandée pour
plus de clarté au niveau de votre script php.

3 - Les fonctions

-Connection : Une fois que vous avez initialisé votre class mysql a l'aide
            de la fonction d'initialisation, lorsque que vous executerez
            une requête la connection a la base mysql se fera si elle n'a
            pas été fait au paravant automatiquement, ainsi donc il ne vous
            est donc pas necessaire d'utiliser la fonction de connection
            manuellement puisque celle-ci se fait automatiquement, d'ailleur
            il ne vous ait pas recommandé d'executer la conection a la base
            mysql manuellement car cela pourrait causer des erreur comme quoi
            vous êtes déja connecté a la base mysql.

5
-Deconnexion : Il y a une fonction de deconnexion de la base mysql, cependant
             comme désormais la connexion a la base de donnée mysql se termine
             automatiquement a la fin de votre script php, il ne vous ait pas
             necessaire de faire appelle a cette fonction.

-Requete : Cette fonction permet d'excuter une requete mysql, cependant, il vous
         est vous necessaire de donner un nombre a cette requete mysql, ainsi,
             si vous avez plusieurs requetes et que vous souhaiter les precharger
         il vous suffit de lui définir à chacune un nombre.

-fetch_array : Il existe une fonction php qui permet une fois la requete mysql
             executée de retourner les resultats sous forme d'un tableau,
             donc ici cette fonction ne necessite pas que vous indiquiez laquelle
             executer, mais quelle est le nombre de la requete mise en mémoire
        auparavant.

-nb_resultat : Il existe une fonction php qui permet de retourné le nombre de résultat
        trouvé pour votre requete mysql, pour executé cette fonction ici, comme
        pour la fonction fetch il vous est uniquement necessaire d'indiquer le
        numéro de la requete mise en mémoire sur la quelle vous désirer savoir
        le nombre de résultat.

-gestion d'erreur: Ceci est une fonction qui en cas d'erreur de connexion a la base de
             ou bien d'une erreur dans votre requete mysql ou autre, retourne un
             message d'erreur. Vous avez deux possibilitées de messages d'erreur:
             un premier, qui affiche toujours le même message d'erreur, ce qui
             est peut s'averer meilleur, selon moi, lorsque l'on utilise cette
             classe sur un site en production, ou bien un message d'erreur avec
             l'erreur mysql ce qui s'avère souvent utile lorsque on fait un
             débug dans son script.

6
-Nb de requete : A chaque fois que vous effectuez une requete mysql dans votre script
         grace a cette classe, elle est comptabilisée et ainsi vous pouvez
         savoir combien de requete vous utlisez, ce afin d'optimiser votre
         script et ainsi éviter qu'il prenne trop de temps à s'executer.

4 - Comment l'utiliser

L'utilisation de cette fonction est très simple, je vais vous détaillé pour chaque
fonctions, comment l'utiliser et ainsi que leurs syntaxe
On suppose que lorsque vous avez créer l'objet a partir de la classe vous l'avez créer
de cette manière:
$sql = new mysql($serveur, $utlisateur, $pass, $bd, $debug, $erreur)
ici $serveur correspond a votre hote mysql, $utilisateur correspond a
l'utilisateur grace auquel vous vous connectez à mysql, $pass correspond
au password grace auquel vous vous connecter à votre base mysql, $bd
coresspond au nom de votre base de donnée, $debug correspond au message
d'erreur que vous souhaiter qu'il s'affiche a 0 le message d'erreur
n'indique pas l'erreur mysql et à 1 le message d'erreur indique l'erreur
mysql, $erreur correspond au message d'erreur que vous souhaiter qu'il
s'affiche dans le cas ou vous voulez qu'il ne s'affiche pas l'erreur
            mysql c'est a dire le cas 0

-Connection : rien n'est a faire puisque c'est automatique lors d'une requete

-Deconnexion : $sql->deconnexion()
             Cepandant il n'est pas necessaire d'executer cette fonction puisque toutes
             les connexion a mysql s'arrêtent automatiquement a la fin de votre script
             php

-Requete : $sql->requete($requete, $p)


         Ici, $requete correspond a votre requete mysql(par exemple:SELECT * FROM membres)
         et $p correspond au numéro de votre requete mysql par exemple la première de
         votre requte vous lui assigner 0, a la seconde 1 et ainsi de suite, et elle

7
         seront ainsi précharger dans la mémoire

-fetch_array : $sql->resultat($p)
        $p correspond ici au numéro de la reqeuette chargé précédément grace a la
        fonction requete

-nb_resultat : $sql->nb_resultat($p)
             $p correspond ici au numéro de la reqeute chargé précédente grace a la
             fonction requete

-gestion d'erreur : La gestion d'erreur se fait automatiquement, c'est a dire que si


            il y a eu un problème, un message d'erreur s'affiche automatiquement

-Nb de requete : $sql->nb_requete


         un simple echo $sql->nb_requete suffit a afficher le nombre de requetes
         utilisées

5 - Exemple

Bon, maintenant que vous avez lu le principe de fonction de cette class un exemple
sera plus explicative

<?php
include("mysql.class.php"); //on inclue ici la class
$sql = new mysql("localhost", "utilisateur", "password", "bd", "1", "désolé un problème est
survenu"); //creation de l'objet mysql
$sql->requete("SELECT * FROM membres", "0"); //on execute une requete simple
while($info = $sql->resultat(0)) //afin d'affiche les résultats de cette requete on utlise une
boucle while
{
echo $info[log]; //on affiche les donnée du champ log de mysql
}

8
$nb = $sql->nb_resultat(0); //on assigne a nb le nombre de résultat trouvé
echo $nb; //on affiche le nombre de résultat trouvé
echo $sql->nb_requete; //on affiche le nombre de requetes utilisées, dans notre cas une seul
donc 1
?>

6 - Droit d'utilisation

Vous êtes en droit d'utliser cette class autant que vous le souhaiter, et même de la
redistribué,
cepandant par respect pour le travail de l'auteur vous devez laisser les commentaires dans le
fichier de la class ainsi que le commentaire html
Pour information, cette class a été réaliser par Nadim (webnewnet@hotmail.com) pour les sites
thewod.com et webnewnet.tk
Je vous remercie d'avance.

NB :
L'arobase (@) est un opérateur de contrôle d'erreur, c'est-à-dire que lorsqu'il est placé en préfixe
d'une expression ou fonction PHP, les messages d'erreur qui peuvent être générés par cette
expression ne seront pas affichés.
Toutefois, il est fortement conseillé de gérer les erreurs plutôt que de les cacher ainsi. Pour ce
faire, il faut utiliser la fonction error_reporting()

Vous aimerez peut-être aussi