Classe de connexion mysql en php5

Contenu du snippet

Il s'agit d'une petite classe en PHP5 qui permet de géré simplement les requêtes SQL pour MySQL.

Utilisation:

Mysql = new Mysql(); // Instantiation
Mysql->Connexion(); //Connexion à la base de donnée

//Requete ne retournant pas de resultat
try {
$NombreLignesAffecte = Mysql->ExecuteSQL('Requete SQL');
}
catch (Erreur $e) {
echo $e -> RetourneErreur();
}

//Requetes retournant un/plusieurs résultat(s)

//Requete ne retournant pas de resultat
try {
$TableResultats=Mysql->TabResSQL('Requete SQL');
}
catch (Erreur $e) {
echo $e -> RetourneErreur();
}

//Utilisation des résultats avec for
$NombreResultats=sizeof($TableResultats);
for($i=0;$i<$NombreResultats;$i++)
{
echo $TableResultats[$i]['Champ1'];
echo $TableResultats[$i]['Champ2'];
}

//Utilisation des résultats avec foreach
foreach ($TableResultats as $Valeur) {
echo $Valeur['Champ1'];
echo $Valeur['Champ2'];
}

// Une seul ligne retourné
echo $TableResultats[0]['Champ'];

Source / Exemple :


<?php
/* 
	//	Nom     : Classe MySQL    
	//	Langage : PHP5         
	//	Auteur  : ONFROY Rudy  

  • /
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; 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->Debogue) throw new Erreur ('Erreur de connexion au serveur MySql!!!'); $Base = mysql_select_db($this->Bdd,$this->Lien); if (!$Base && $this->Debogue) throw new Erreur ('Erreur de connexion à la base de donnees!!!'); } public function RetourneNbRequetes() { return $this->NbRequetes; } public function TabResSQL($Requete) { $i = 0; $Ressource = mysql_query($Requete,$this->Lien); $TabResultat=array(); if (!$Ressource and $this->Debogue) throw 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; } public function DernierId() { return mysql_insert_id($this->Lien); } public function ExecuteSQL($Requete) { $Ressource = mysql_query($Requete,$this->Lien); if (!$Ressource and $this->Debogue) throw new Erreur ('Erreur de requête SQL!!!'); $this->NbRequetes++; $NbAffectee = mysql_affected_rows(); return $NbAffectee; } } ?>

Conclusion :


Si vous avez des questions où des propositions d'amélioration.

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.