IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MVC PHP Discussion :

Structure MVC et routage [ZF 1.9]


Sujet :

MVC PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut Structure MVC et routage
    Bonjour,

    Voici quelques notions de base en MVC qui me posent problème.

    Prenons l'exemple d'une structure de site.
    Dans cet exemple, qu'est-ce qui est Controller ? Qu'est-ce qui est Action ? Qu'est-ce qui est Module ?
    - sport/ est-il un controller, un module ?
    - si sport/ est un module, comment créer /sport/laune ?
    - Qu'est-ce que /foot/ ?
    - Y a-t-il une notion entre dossier et page avec controller et action ?
    - etc...

    Problème tout simple, comment créer une page (contact par exemple) à la racine du site.
    C'est à dire que je ne veux pas avoir à créer une URL du type http://www.example.com/index/contact

    Je suis un peu perdu, merci de m'éclairer sur ces quelques concepts.

  2. #2
    Membre Expert
    Avatar de Eusebe
    Inscrit en
    Mars 2006
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 992
    Par défaut
    Bonjour,

    Les questions que tu pose concernent en fait le routage, c'est à dire la détermination d'un module, d'un contrôleur, d'une action et de paramètres à partir d'une requête.

    Par défaut la classe de routage utilisée par le ZF est Zend_Controller_Router_Route_Module.

    Sauf erreur, cette classe scinde la requête HTTP en fonction du / dans un tableau puis répartis les éléments trouvés :
    - si le premier élément correspond à un module alors cette classe considère que c'est le module et l'extrait du tableau
    - le premier des éléments restant est extrait, c'est le contrôleur
    - le premier des éléments restant est extrait, c'est l'action
    - les éléments restants sont des paramètres, extraits par paire clé / valeur.

    Problème tout simple, comment créer une page (contact par exemple) à la racine du site.
    C'est à dire que je ne veux pas avoir à créer une URL du type http://www.example.com/index/contact
    Pour ça, il faut que tu ajoutes un autre routage. Pour cette problématique c'est la classe Zend_Controller_Router_Route_Static qui est la mieux adaptée :
    http://framework.zend.com/manual/fr/....routes.static

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2003
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 397
    Par défaut
    Merci à toi c'est beaucoup plus clair. Y'a plus qu'à tester.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Joomla!] [Structure MVC][Ajout d'une nouvelle vue][Problème de header HTML]
    Par nikko49 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 09/04/2013, 09h47
  2. Boucles dans structure MVC souple.
    Par DrWilly dans le forum Langage
    Réponses: 4
    Dernier message: 09/02/2010, 23h57
  3. Structure MVC site web
    Par mathieu3392 dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 23/03/2009, 11h38
  4. [MVC] Problème de routage
    Par Bast_ dans le forum MVC
    Réponses: 9
    Dernier message: 11/10/2007, 12h57
  5. [MVC] Structure arborescente
    Par cyspeo dans le forum MVC
    Réponses: 4
    Dernier message: 06/02/2007, 21h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo