Beruflich Dokumente
Kultur Dokumente
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;
}
}
}
?>
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
2 - Installation
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
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
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()