Interface d'administration site web, pb récurrent du web

Interface d'administration site web, pb récurrent du web - PHP - Programmation

Marsh Posté le 10-10-2007 à 16:37:44    

Bonjour,
 
j'ai créé en php un site web qui présente les projets d'une agence. Pour cela j'ai séparé les données (fichiers xml) de la présentation (lecture en php, affichage grâce aux css), notamment pour pouvoir dans le futur faire plusieurs types de présention pour un même projet (ou d'indexation). Cependant je me demande s'il n'existerait pas des systèmes open-source (ou non, librairies php ou autre) d'administration de données : on définit les champs d'un projet par exemple et puis une interface nous permet d'ajouter les projets. Ensuite des scripts php nous permettent d'accéder aux données des projets stockés en base ou dans des fichiers xml pour les afficher. Cela éviterait la validation des fichiers xml, leur création fastidieuse et pourrait éventuellement permettre au client d'ajouter lui-même des projets !
 
J'ai bien remarqué l'existence de CMS, mais il me semble que ceux-ci impose une "structure du site" (on ne peut que modifier des templates et non pas faire le site et la navigation comme on le souhaite avec seulement l'accès aux données du système).
 
N'hésitez pas à me dire si je me fais mal comprendre.
 
Merci !
 
Guillaume

Reply

Marsh Posté le 10-10-2007 à 16:37:44   

Reply

Marsh Posté le 11-10-2007 à 14:17:15    

A toi de le faire toi-même [:dawa]

Reply

Marsh Posté le 11-10-2007 à 16:53:33    

plutôt que des fichiers xml, une bd aurait peut-être été plus appropriée. Car l'ajout d'un projet dans ton fichier xml implique de réécrire tout le fichier -> pas tip top côté perfs si c'est un gros fichier.
Avec une bd, ça sera plus rapide et côté ihm, tu as déjà phpmyadmin (bon, c'est sûr, ça vaut pas un cms). Et tu gardes aussi le côté séparation contenu/mise en page ;)

Reply

Marsh Posté le 14-10-2007 à 23:08:10    

Merci pour vos réponse.
Rufo => effectivement en bd c'est mieux mais je trouve que la saisie est plus fastidieuse via php my admin (surtout que, vu que l'on stocke dans plusieurs table, il faut respecter les contraintes de dépendances) que dans des fichiers XML.
Sinon, pour mon problème j'ai trouvé des CMS très souple (plutot cmf, f pour framework) qui semble répondre à ma demande (possibilité de créer des variables personnalisée, etc.). Je suis en train de le tester, à voir donc ... (il s'agit de MODx)


Message édité par gl_sub le 14-10-2007 à 23:08:57
Reply

Marsh Posté le 15-10-2007 à 12:29:15    

après, y'a les wiki aussi comme outils pas mal... Je suis en train de tester dokuwiki qui stocke tout dans des fichiers txt (pas besoin de bd). Il est pas mal du tout ;)
En cherchant, y'a en sûrement qui stockent en xml aussi si tu tiens tellement à une solution de stockage xml...
 
http://www.scriptet.net/cms-comparaison.html
http://www.wikimatrix.org/
http://www.cmsmatrix.org/


Message édité par rufo le 15-10-2007 à 12:34:32
Reply

Marsh Posté le 15-10-2007 à 12:46:08    

Le développement PHP moderne implique plutôt le recours à Symfony ou CakePHP. Ces deux frameworks gèrent parfaitement la génération automatique d'admin à partir d'un schéma ou d'une DB existante. Y compris en gérant l'intégrité référentielle via InnoDB. Ils sont largement répandus et Symfony est par exemple utilisé par Yahoo Bookmarks et bientôt sur la refonte de del.icio.us (!) - il gère le rsync mais j'ai pô encore joué avec ça ;)  
 

Citation :

la saisie est plus fastidieuse via php my admin


 
A la base, PHP est un langage de script plutôt facile à utiliser. Il est trivial de développer des scripts d'imports stand-alone depuis une source de données issue du client (classiquement une flopée d'Excel) vers une DB. Le fait que tu le fasses à la main est inquiétant :-/
 
A quoi ça sert d'utiliser un langage objet puissant sans utiliser Symfony, doublé d'un langage de script flexible si tu ne fais pas de moulinettes ?
 
Pour les CMS, Spip-Agora ou Typo3 ne te limitent pas à une mise en page particulière, il faut mettre en peu les mains dans la graisse pour customiser l'admin, mais c'est pour ça qu'on te paie, c'est ce qu'on appelle travailler comme "développeur PHP" (enfin, je crois).
 
Au niveau de la mise en page du front-end en lui-même, il n'y a aucune limitation / navigation imposée : http://www.clever-age.com/ est en Spip et il a pourtant de la gueule.


Message édité par antika le 15-10-2007 à 12:54:30
Reply

Marsh Posté le 15-10-2007 à 14:34:02    

Merci Atika pour la mention de symphony et cakePHP. J'ai regardé rapidement et il semble qu'ils correspondent exactement à ce que j'imaginais en posant ma question (j'ai hâte de tester la génération d'IHM admin).
Pour te répondre plus précisément je ne "développe pas des scripts d'imports à la main" (rien "d'inquiétant donc" ;-) ) mais créais mes données en XML faute de connaître les framework dont tu m'as donné la piste (ce qui allait plus vite que de développer l'interface d'admin ou d'utiliser PHPMyAdmin, les softs de validation xml jouant ce rôle).
Après, MODx semble bien répondre à mon besoin aussi (il faut que je teste encore, surtout surtout le remplissage de la bdd), c'est en quelque sorte un symphony spécialisé pour le web (avec évidemment moins d'étendue au niveau des fonctions et plus de fonctionnalités spécifiques à la gestion d'un site web), un cms très flexible. Je mets donc encore allègrement les mains dans la graisse (puisque cela reste un framework d'assez bas niveau)...

Reply

Marsh Posté le 15-10-2007 à 14:44:07    

Tu confonds développement Web et gestion de contenu, framework et CMS, langage objet et langage de script.
 
Tu devrais plus simplement installer SPIP pour voir ce que c'est, après tu redéfiniras mieux tes besoins & compétences, ça me parait indispensable.

Message cité 1 fois
Message édité par antika le 15-10-2007 à 14:58:40
Reply

Marsh Posté le 15-10-2007 à 16:13:17    

antika a écrit :

Tu confonds développement Web et gestion de contenu, framework et CMS, langage objet et langage de script.
Tu devrais plus simplement installer SPIP pour voir ce que c'est, après tu redéfiniras mieux tes besoins & compétences, ça me parait indispensable.


 
Je crois avoir bien saisi la différence, c'est il me semble, et comme je tentais de l'expliquer dans mon post, une question de niveau de service et de spécialisation. Soit, dans l'ordre :
1. PHP "pur"
2. Framework de dev PHP, type Symphony
3. CMF, type MODx
4. CMS, type Joomla
 
De 1 à 4 dans l'ordre : on augmente la simplicité de mise en oeuvre mais on perd en puissance et possiblilités. Ou : on passe de "mettre les mains dans le cambouis" à "tourner la clé de contact". N'hésites pas à me dire s'il te semble encore que je fais des confusions ou si tu vois les choses différemment. (étant développeur java de métier je fais à peu près la différence entre langage de script et langage objet  ;)  mais cela ne me paraît pas avoir grand chose à voir avec la discussion, peut-être pourras-tu m'éclairer ?) .
 
Je ne connais pas SPIP, mais il me semble qu'il doit être entre les niveaux 3 et 4. Je préfère m'atteler à MODx qui, même s'il est un peu plus complexe à mettre oeuvre, offre plus de souplesse.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed