CLASSE FRANCOPHONE D'EXPLOITATION MYSQL

Messages postés
10918
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
- - Dernière réponse : Gwinyam
Messages postés
48
Date d'inscription
vendredi 7 octobre 2005
Statut
Membre
Dernière intervention
2 janvier 2008
- 2 janv. 2008 à 14:40
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/45175-classe-francophone-d-exploitation-mysql

Afficher la suite 
malalam
Messages postés
10918
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17 -
hello,

je dois être dans un mauvais jour aujourd'hui...mais je vais encore ne pas être très gentil...(c'est le deuxième code que je descends).
Tu utilises php5, déjà, bien. Je vois encore trop de codes en PHP4, à l'aube de la sortie de PHP6...
Par contre, j'ai un paquet de griefs!
Déjà, pourquoi mets-tu tes paramètres de connexion dans ta classe? Il faut modifier ta classe à chaque fois qu'on veut une connexion à un autre serveur? genre, si mon application web doit se connecter à 2 serveurs db (et c'est svt le cas pour moi...dans mon taf), je dois avoir 2 classes?? Les passer en paramètre serait pourtant si simple...
Tu ne gères aucune erreur. php5 offre les exceptions, et toi, tu n'en fais rien. Si mon serveur est down, il se passe quoi ? Certes, ton constructeur retourne false (???), ce qui est déjà étrange, mais de toute manière il essaye de se connecter; donc si mon serveur db est down, j'aurai une belle erreur. Alors que si tu avais implémenté les exceptions, j'aurais pu "catcher" (intercepter ou attraper, pour les anglophobes) cette erreur.
Tu me donnes des méthodes ReqDELETE, ReqINSERT etc...avec des mysql_affected_rows() en retour, sans te soucier de vérifuer que j'utilise la bonne méthode. Que se passe-t-il si je fais un ReqSELECT en lui passant une requête UPDATE ? Ou l'inverse ?
Des die() dans une classe...bref, ça rejoint mon grief sur la gestion des erreurs.
la méthode TupleSuivant() m'inquiète un peu. Il y a une fonction qui s'appelle mysql_data_seek() qui aurait été nettement plus appropriée.
Il n'y a même pas la gestion des ressources (resources, je ne sais pas trop comment traduire ça...ressource n'est pas franchement à propos, mais là je ne trouve rien de mieux). Ta classe est juste un "wrapping" des fonctions mysql_*, avec tout juste quelques "améliorations" (Req*() ).
Bref, selon moi, ta classe n'apporte rien, voire même enlève à la facilité d'utilisation des fonctions mysql_*().
Tu devrais sérieusement jeter un oeil sur d'autres classes DB, sur l'abstraction, les singletons, les multitons, sur PDO etc...avant de continuer sur cette voie pour ton projet de "framework francophone mysql". Tu pars sur un mauvais trip, là.
Joyeux Noël... ;-) (désolé, je sais que je suis dur là, donc je voulais contrebalancer : ton idée est louable, tu utilises php5, etc...mais tu te fourvoies là. Je ne peux pas te laisser faire sans râler. Mais quand même, je veux que tu passes de bonnes fêtes de fin d'années...donc : réflêchis, relis un peu la doc de PHP, mate d'autres codes dans le même genre, et change ton optique...et pour la nouvelle année, repars sur de nouvelles bases!).
Gwinyam
Messages postés
48
Date d'inscription
vendredi 7 octobre 2005
Statut
Membre
Dernière intervention
2 janvier 2008
-
Je dois avouer que c'est pas faux et c'est le genre de commentaires que j'attendais. Donc effectivement, il y a encore du boulot.

Merci bonhomme et bonnes fêtes de fin d'année à toi aussi.^^
malalam
Messages postés
10918
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
17 -
Ravi que tu le prennes bien :-)
Bonnes fêtes à toi aussi, et vraimznt, revois ta copie et sors nous un joli code contre lequel je ne pourrai rien dire ;-) Je suis sûr que tu le peux.
Un "hint" : sprs des sentiers battus un peu plus. Des wrappers, il y en a des tas...et ce n'est pas super utile. Des abstractions DB, il y en a bcp aussi, et tu aurais vraiment bcp de boulot si tu voulais te démarquer. trouve autre chose...du genre...tu veux faaire un framework mysql francophone ? Ok, attaque toi à SQL. SQL est un langage simple, mais anglophone...un truc très sympa serait de proposer une alternative francophone. Du genre :
SELECTIONNE user_nom, user_email DANS users OU user_id = 251207
Par exemple hein... :-) En moins reessemblant à du SQL ce serait encore mieux. Avec des méthodes par exemple. Enfin chais pas...change d'optique.
Gwinyam
Messages postés
48
Date d'inscription
vendredi 7 octobre 2005
Statut
Membre
Dernière intervention
2 janvier 2008
-
ça peut s'imaginer effectivement. Pour le moment je finis ce framework, on verra ensuite ;)

au passage, ce n'est pas un framework mysql francophone que je veux faire, mais un framework php francophone léger^^

J'ai déjà commencé à tout corriger, je ne devrais pas tarder à fournir une seconde version bien moins critiquable ;)
cs_zzzzzz
Messages postés
408
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
18 décembre 2012
-
La note de 1 est injustifié je vais donc mettre le maximum pour contre-balancer. Je trouve que le code est un bon départ. Certes il y a mieux mais c'est toujours bien :) Bon noël :)