CLASS MYSQL 5/PHP5 AVEC GESTION DES EXCEPTION ET DES REQUÊTES PRÉPARÉS

Messages postés
392
Date d'inscription
mercredi 28 octobre 2009
Statut
Membre
Dernière intervention
23 mars 2012
- - Dernière réponse : devil_may_cry
Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015
- 12 sept. 2011 à 01:48
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/53569-class-mysql-5-php5-avec-gestion-des-exception-et-des-requetes-prepares

devil_may_cry
Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015
-
désolé j'avait manqué cette partie :)
dans config.php il y'avait ca

$dbcfg['host'] = 'localhost';
$dbcfg['database'] = 'base';
$dbcfg['user'] = 'root';
$dbcfg['passsword'] = '';
tinalestate
Messages postés
4
Date d'inscription
mercredi 10 décembre 2008
Statut
Membre
Dernière intervention
30 septembre 2017
-
Un bel exemple de savoir mais c se compliquer la vie ...
et, terreaultguy, config.ini c ton propre fichier où tu indiques login/ password de ta connexion Mysql à toi :))
terreaultguy
Messages postés
1
Date d'inscription
dimanche 13 mai 2007
Statut
Membre
Dernière intervention
11 septembre 2011
-
Bonjour
La premiere de code est:

include 'config.php';

mais dans les explications ou le .zip ce fichier n'existe pas
Est-ce un générique ou est particulier a cette example.

Quand je récolte des exemples par d'autres les include sont souvent fournie

Merci,
Guy
devil_may_cry
Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015
-
j'avais pas encore explorer son utilisation dans un wrapper donc je ne saurai en mesure de te donné une réponse sur le sujet
cod57
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
10 -
j'ai lu ça avant dans le manuel

http://www.php.net/manual/fr/language.oop5.patterns.php
Le pattern Singleton est l'un des plus controversés. Les critiques indiquent que le singleton crée un contexte global dans l'application et couple fortement le singleton à d'autres classes. Ceci mène vers des dépendances cachées et des effets de bord désagréables, le code devient ainsi plus difficile à maintenir et à tester.

Les critiques pointent aussi l'inutilité d'un singleton dans un environnement isolé comme PHP où les objets ne sont pas persistents entre les requêtes. Il est plus simple et propre de créer son graphe d'objets en utilisant des monteurs ou des fabriques, en début de requête.

Les singletons violent aussi plusieurs principes "SOLID" et la loi de Demeter. Les singletons ne peuvent être sérialisés. Il ne peuvent être surchargés (avant PHP 5.3) et ne seront pas nettoyés par le collecteur car une instance est toujours présente en mémoire, dans le singleton lui-même.

pensez vous que le singleton soit sur dans un wrapper quelconque ?
devil_may_cry
Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015
-
"Je ne crache pas sur ton boulot, ce n'est pas mon genre"
il y a pas de souci on est juste entrain de confronter nos deux point de vue il y a de mal en ça

une des raisons est qu'il s’avère que parfois certain hébergeur n'active pas l'extension PDO pour leur pack free ce qui est fréquent donc pour moi il ne s'agit plus dans ce cas ci de réinventer la roue mais plutôt une manière d'avoir une approche objet des fonctions native mysql_*

je comprend bien ton point de vue !!
phpAnonyme
Messages postés
392
Date d'inscription
mercredi 28 octobre 2009
Statut
Membre
Dernière intervention
23 mars 2012
21 -
Je ne vois pas en crois ta classe simplifie la gestion des requêtes préparés, puisque tu sembles te baser sur PDO et PDOSTATEMENT. Ce que je veux te faire comprendre c'est que tu réinventes PDO avec des fonctions mysql_*. D'où à mon sens il n'y a pas de grand intérêt. Je ne crache pas sur ton boulot, ce n'est pas mon genre, mais je ne comprend pas le pourquoi.
devil_may_cry
Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015
-
si je passe le constructeur en public on pourra donc avoir plusieurs instance de la class en utilisant new ce qui faussera mon approche singleton qui est la pour éviter cela :)
cod57
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
10 -
Bonjour
pourquoi n'utilises tu pas le constructeur en public ?
et passes tu par connect
devil_may_cry
Messages postés
194
Date d'inscription
dimanche 18 mars 2007
Statut
Membre
Dernière intervention
11 juillet 2015
-
Merci d'avoir pris le temps de jeter un coup d’œil !
je suis peut être d'accord avec toi sur le faite que les fonctions existe en native mais le fait que la class n'est pas intéressante je ne crois pas qu'on est en phase sur ça puisque la class simplifie la gestion des requête préparer même si cela existe avec l'extension mysqli_* en plus d'offrir deux mode de gestion d'erreur (exception,warning)et met en évidence l'approche singleton.
phpAnonyme
Messages postés
392
Date d'inscription
mercredi 28 octobre 2009
Statut
Membre
Dernière intervention
23 mars 2012
21 -
Avec un coup d'oeil rapide; Ta classe n'est pas vraiment intéressante dans le sens où celà ressemble plus à une translation des fonctions mysql_* en PHP>5. En somme les fonctions de ta classe existe déjà en natives. Peut-être que c'était le but ?