CMS Home Made : Usine à gaz bonne pour la poubelle ?

Je ne sais pas trop si mon post rentre dans Seg Fault, ou dans gribouillage, ou dans les deux, mais je pense que c’est plutot ici.

Je bidouille un petit site en Php+MySQL (un CMS en gros…) depuis quelques temps, mais avec des connaissances en php que je juge assez … limitées.

J’ai regardé le code de deux ou trois CMS « tous faits » du style PostNuke (je n’en ai pas entendu beaucoup de bien, notamment par un certain Glop, ici même  ), et je me pose une grave question … Est ce que je me goure complètement depuis le début ?

J’ai l’impression de tout pouvoir faire avec des boucles et des if,elseif,else, deux ou trois requête à ma DB et le strict minimum de fonctions avancées, juste envoyer des cookies, les lire et basta (ah oui, getimagesize quand même et un peu d’upload). Or j’ai l’impression que mon site en fait quand même pas mal.

De votre côté, est ce que vous exploitez à fond les fonctions de Php pour un CMs (le mien est ici : http://chakibrull.online.fr&nbsp ou vous restez avec des fonctions toutes simples ? Ca me fait vraiment peur car j’aurai l’impression d’y avoir perdu du temps si tout ça n’est qu’une usine à gaz :confused:
Je n’ai rien de pécieux sur ce site, juste des essais, donc je veux bien « donner les clés » si quelqu’un peut me dire si je dois faire un bon gros nettoyage

PS : ce qui me fait aussi peur, c’est que j’ai tout fait par moi même, en me jetant dedans avec un bouquin de php3 sous la main « au cas où »…

Pour avoir écrit il y’a bien longtemps un CMS en PHP, je vais te donner 20 centimes de conseils.

Y’a des tas de définition pour ce qui est un “bon” CMS. Niveaux d’abstractions, rapidité, manière de gérer les themes… y’a autant d’approches que de programmeurs.

Selon ma petite expérience perso :

  • *Nuke = bloated. PHP4 est pas fait pour gérer de grosses applis, et il est très mauvais avec les classes
  • ce qui fait mon point 2 : les classes c’est bien. En C++ (qui a dit et encore ?). Faire des tas de niveaux d’abstraction pour faire un code “intelligent” ca ralenti enormément l’efficacité. Bref j’ai jamais employé de classes en PHP et je m’en porte pas plus mal. Pour un langage scripté les fonctions sont amplements suffisantes.
  • l’important dans un CMS c’est qu’il t’apporte le compromis que tu souhaite entre facilité de mise à jour de contenu et convivialité pour les utilisateurs. Ce qui se passe derrière, tant que ca marche… Après si tu veux gérer 100 connexions simultanées, tu pourras t’intéresser a l’optimisation

T’a même eu 10 cts de conseils en rab, enjoy

Tout d’abord merci pour la réponse, c’st plus complet (et moins moqueur) que je ne pouvais l’espérer !

Même si tu n’as pas du t’en rendre compte, tu as répondu à ma question indirectement par « oui tu peux le foutre à la poubelle » :confused:

En effet, le concept de classes, je n’en avais jamais entendu parlé. Je suis allé faire un (tout petit) tour sur commentcamarche.com (il doit y avior bien mieux, mais j’avais juste besoin de savoir ce que « classes » voulais dire), et j’ai la forte impression que ça sert tout simplement à gérer l’affichage de telle ou telle partie du site pour les membres … ou non.
Pour faire cela (dans la partie admin de mon site), j’utilise juste une structure if / else , et si le nom et le pass du cookie corresponde à ceus dans la base, j’affiche le contenu du if (la page d’admin) et sinon j’affiche un gros blanc… (le code dans le else).

Et donc si je ne me gourre pas, mon code est dramatiquement pourri. Gniiiiih…

Ce message a été édité par Chakibrull le 02/04/2004

Fais voir quand même, histoire de vérifier, il y a 80% de chances que ton code soit ouvert aux injections SQL, comme 80% du code qu’écrivent les gens pour planquer leur admin aux indélicats.

Bah oui, le truc est la: faire la fonctionalite que tu veux peut etre simple. Faire une page qui affiche une serie de trucs depuis la base de donees c’est pas complique, que ca soit avec des if, des elses ou n’importe quoi et ca peut tenir en quelques lignes. Ce qui est difficile c’est de le faire BIEN securise, efficace, modulaire et reutilisable. La, de suite, la quantite de code necessaire est vite multipliee par 10 avec un systeme peut adapte (tout faire a la main) ou par beacoup moins avec une plate forme qui va gerer beaucoup des trucs compliques pour toi.

Conclusion de Glop : passe a l’ASP.net , moins de code, plus facile, plus rapide
C’est normal, c’est son taf je crois …

[quote]Conclusion de Glop : passe a l’ASP.net , moins de code, plus facile, plus rapide
C’est normal, c’est son taf je crois …[/quote]Non, le mien

Je passerai bien à ASP.net, ça me tente beaucoup, mais là, j’ai déjà à peine le temps de toucher à mon site, alors apprendre tout depuis le début … Non pas que je n’aurai pas le temps, non, je le trouverai, mais je le trouverai sur le temps que je dois consacrer à mes études. Et je me connais, ça va vite tourner à 3 heures par jour de prog, et là, mon classement scolaire (Sup PC…) si durement acquis va en prendre un méchant coup. Et même si c’est tentant de faire quelque chose d’intéressant de sa vie, quand on est en prépa, il faut pas. Tu te fais chier, tu bosses, tu te fais chier à bosser. Bon bref…

Mon code est compréhensible pour moi, mais c’est vrai que ça pourrait être chaud quelqu’un d’autre … Par contre, là oui, mon gros soucis je pense que c’est au niveau de la sécurité. Je l’ai fait tout seul ce site, donc je n’ai jamais eu une oeil critique…

Si vous voulez jeter un coup d’oeil,
Pour l’admin c’est http://chakibrull.online.fr/admin/ user Chakibrull et pass alakazam .
Pour le code du site , c’est ici : http://chakibrull.online.fr/stuff/files/ckb.zip

Edit : s’il y a des choses qui peuvent vous parapitre vraiment pas finies du tout, c’est normal… Il s’agit de le dernière version de mon site que j’ai pu retrouvé, la plus aboutie étant sur le disque dur de mon portable, celui là même qui a décidé de partir en sucette et d’aller fait un tour chez la poubelle à disque dur de Dell…

Ce message a été édité par Chakibrull le 03/04/2004