Salut !
J'ai récupéré sur Internet une classe qui permet d'organiser la gestion des objets MySql utilisés dans mon application. Toutefois, j'essaie de comprendre cette classe mais il y a un truc qui bloque :
voici un bout de la classe qui permet de gérer les exceptions :
Et voici un bout de la classe qui permet de gérer les exécutions sql :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 class MySQLExeption extends Exception { public function __construct($Msg) { parent :: __construct('<pre>'.$Msg.'</pre>'); }
J'ai une requête foireuse (je mets à jour une colonne dont le nom n'existe pas).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 class Mysql{ private ... ; public function ExecuteSQL($Requete){ if (!($Ressource = mysql_query($Requete, $this->Lien))) throw new MySQLExeption('1 - Erreur SQL : '); if (!$Ressource and $this->Debogue) throw new MySQLExeption('2 - Erreur SQL : '); $this->NbRequetes++; $NbAffectee = mysql_affected_rows(); return $NbAffectee; }
Alors que je tente d'exécuter la requête via la méthode ExecuteSQL, j'obtiens le message suivant :
Ce que je ne comprends pas est pourquoi le message d'erreur s'affiche-t-il alors que dans la méthode ExecuteSQL si ma requête est foireuse, je lance une exception, mais à aucun moment je ne fais d'affichage ?Fatal error: Uncaught exception 'MySQLExeption' with message '
1 - Erreur SQL :
' in /var/www/mc/classes/Tools/Mysql.php:122 Stack trace: #0 /var/www/mc/action.php(83): Mysql->ExecuteSQL('???UPDATE ????M...') #1 /var/www/mc/index.php(54): include('/var/www/mc/act...') #2 {main} thrown in /var/www/mc/classes/Tools/Mysql.php on line 122
Merci de votre aide !
Partager