|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
Bonjour,
Afin de faire un code plus propre et plus logique, je me suis mis à faire de l'orienté objet dans mes script, en plus d'utiliser un moteur de template afin de séparer le code html du code php. Ma question maintenant, c'est comment organiser mes formulaires. Lorsque je ne faisais pas d'orienté objet, la question ne se posait pas, je faisais comme il est expliqué dans les nombreux tutoriels sur le sujet, mais maintenant, je ne vois pas du tout comment organiser. Faut-il crée un script pour l'affichage, un pour la validation, ou encore ne garder qu'un script, ou créer une classe dédiée ? Bref, que de questions existentielles Avez-vous des exemples de formulaires (la partie php) qui sont organisés dans la logique POO ? Merci beaucoup
|
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
Quand tu parles de "template" je te propose déjà de passer à l'évolution d'après et d'utiliser l'architecture MVC
Ensuite pour les formulaire, ça dépend desquels tu parles. S'il s'agit d'un "simple" formulaire "tapez votre adresse e-mail pour vous inscrire à la newsletter", il n'y a pas de choses particulières à part peut-être une classe avec une méthode qui affiche ce formulaire et que tu appelles un peu partout sur le site. Par contre si tu parles des formulaires qui permette de modifier des objets dans la base de données par exemple, tu peux aller très loin jusqu'à décrire tes objets dans un fichier de configuration et là tu auras une classe qui s'occupera de construire le formulaire à partir de ce fichier de configuration. Cette classe pourra aussi s'occuper de vérifier les données des ces objets par exemple. Pour parler un peu de code, il y a deux choses que je garde souvent à l'esprit, c'est que si il y a du code en double quelque part ou bien si j'ai besoin d'un "switch", je peux remplacer ça par des classes et de l'héritage
__________________
Modérateur PHP |
|
|
00
|
|
|
#3 | |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
Citation:
![]() Par exemple, un formulaire d'inscription, unique sur le site, qui comprend identifiant, mot de passe, email, tu ferais quoi comme page ? Actuellement, j'ai inscription.php, qui crée l'objet Smarty (le moteur de template que j'utilise) et qui appelle le formulaire inscription.tpl. Je suis bloqué là, car je ne sais pas si je dois : soit faire le traitement du formulaire également dans inscription.php, ou, crée un autre script, ou peut être créer une classe, que j'utiliserai dans inscription.php ![]() Bref, c'est un problème d'organisation, je ne vois pas comment faire quelque chose de logique, car pour moi c'est "sale" d'appeler le script identification.php pour tester le formulaire.
|
|
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
avant de parler de fichier, est ce que tu as prévu de passer à MVC ? jette un coup d'œil aux deux lien suivants parce l'organisation des fichiers est différentes
Regarde d'abord ce fichier proposé par un membre du forum : http://www.developpez.net/forums/sho...d.php?t=395269 Il s'agit surtout de l'utiliser pour que tu vois comment ça fonctionne. N'étudie pas en détails le code source du fichier parce qu'il est très particulier pour tenir dans un seul fichier et donc tu ne verras pas souvent se genre d'organisation dans une grand application. Avec ce code tu as un exemple d'application MVC avec un contrôleur Ensuite pour aller plus loin tu peux te pencher sur le Zend Framework http://g-rossolini.developpez.com/tu...ework/debuter/ Là tu auras plusieurs contrôleurs et chaque contrôleur est une classe.
__________________
Modérateur PHP |
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
Cela me semble bien compliqué pour le petit truc que je veux faire
Le modèle MVC serait intéressant à utiliser, mais j'ai déjà commencé mon site avec Smarty + PDO + Doctrine, bien que je n'ai fait pas grand chose encore, abandonner Smarty ne m'enchante pas vraiment, vu que tout est basé dessus. Penses-tu que l'utilisation de l'architecture MVC est bénéfique pour un projet de petite taille au vue des efforts pour le mettre en place ?
|
|
|
00
|
|
|
#6 | |||
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
Citation:
![]() en prenant l'habitude de "penser MVC" même avec des petits projets, ça te prendra ensuite de moins en moins de temps à mettre en place et tu gagneras du temps même avec les petits projets. et le jour ou tu devras faire un énorme projet de plusieurs mois tu auras déjà l'habitude de partir sur des bases solides J'ai insisté sur l'utilisation de MVC parce que pensais que tu partais à l'aventure, que tu était entrain de faire tes premiers pas de tests si tu as déjà un site en cours et que tu ne veux pas tout refaire ce n'est pas grave, tu peux continuer comme ça. Pour en revenir à ton formulaire d'identification, voilà un exemple qui serait plus simple avec des classes : Tu aurais une classe PageEspaceAdministration dont hériteraient toutes les pages protégée par mot de passe. Et comme ça tu aurais juste besoin de gérer le formulaire de connexion dans la classe PageEspaceAdministration Maintenant si tu n'utilise pas de classes il ne te reste plus qu'à mettre ce genre de code dans toutes tes pages de l'espace protégé : Code :
__________________
Modérateur PHP |
|||
|
|
00
|
|
|
#7 | |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
Citation:
Je vais regarder les tutoriels disponibles sur le sujet. Merci. |
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
Dernière petite question : suis-je obligé d'abandonner l'utilisation d'un moteur de template si je passe au modèle MVC ?
|
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
le modèle MVC est un système de template en un peu plus évolué puisqu'il défini comment dialoguent les données, les actions de l'utilisateur et l'affichage alors que le template ne fait que séparer les données et l'affichage
__________________
Modérateur PHP |
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
J'ai mal formulé
Je peux toujours utiliser Smarty pour gérer les fichiers tpl ? J'ai vu dans le tutoriel de PHP Solution qu'il gardait l'utilisation de Smarty. Je parlais du point de vue technique, pas de l'architecture Merci. |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() ![]() Inscription : octobre 2005 Messages : 3 398 ![]() |
J'ai lu le tutoriel sur Zend Framework est j'ai pigé le fonctionnement du modèle MVC, et ce framework me semble intéressant, mais dans ce tutoriel, il y a du code php dans les fichiers HTML, et c'est justement ce que je voulais éviter.
Je vais poser ma question dans un forum plus approprié. Merci de m'avoir mis sur la voie |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com