MVC, index.php et variables GET

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : MVC, index.php et variables GET

Re: MVC, index.php et variables GET

par Invité » 22 févr. 2012, 21:26

Je crois que j'ai compris, merci !!!

Re: MVC, index.php et variables GET

par Shenryu » 22 févr. 2012, 13:06

Même dans son cas, $_GET est une variable globale, donc accessible même dans un objet.
Oui je suis bien d'accord avec ça. Je reprenais juste le cas que tu présentais dans ton exemple.
Et j’appellerai pas ce que tu cites un front-controller mais plutôt un bootstrap.
Pour ce qu'on m'a appris des termes un front-controller c'est pour désigner un contrôleur de la partie accessible aux visiteurs et membres de l'application.
Et enfin les back-controller pour la partie administration.
Non non le bootstrap n'a pour rôle que d'initialiser tes données/objets par rapport à ton environnement.

Ici, tu parles de frontend et backend. C'est du découpage d'application en modules ou sous-applications et indirectement un découpage des actions de tes contrôleurs. Mais les termes ne sont pas liés à front-controller, c'est juste une manière de le nommer. Le Fwk Symfony utilise cette notion dans l'un de ses tutoriaux d'ailleurs.

Pour le contrôleur frontal, voici une explication plus en détails : http://en.wikipedia.org/wiki/Front_Controller_pattern
C'est le rôle du contrôleur d'appeler modèle(s) et vue(s) et notamment de définir quelle vue afficher à partir d'une requête utilisateur (comme ici via $_GET).
Le contrôleur frontal se charge d'intercepter toutes ces requêtes et de "router" vers le contrôleur. Il fonctionne comme un point d'entrée pour le coup sauf qu'il garde le rôle d'un contrôleur.

Maintenant effectivement tu peux très bien faire ce genre de choses dans ton index.php (le bootstrap étant encore autre chose), c'est juste des choix de répartitions. Par exemple, ZF fonctionne avec un objet contrôleur frontal (Zend_Controller_Front) différencié de ton index.php. En revanche, Symfony utilise ton point d'entrée index.php (ou dev.php ou autre) comme contrôleur frontal.

Voila je sais pas si j'ai été très clair #-o mais je l'espère :P

Re: MVC, index.php et variables GET

par xTG » 22 févr. 2012, 12:11

Même dans son cas, $_GET est une variable globale, donc accessible même dans un objet. ;)

Et j’appellerai pas ce que tu cites un front-controller mais plutôt un bootstrap.
Pour ce qu'on m'a appris des termes un front-controller c'est pour désigner un contrôleur de la partie accessible aux visiteurs et membres de l'application.
Et enfin les back-controller pour la partie administration.

Re: MVC, index.php et variables GET

par Shenryu » 22 févr. 2012, 11:24

C'est donc ma page index.php qui redirige vers mon contrôleur n'est ce pas ?
Ton index.php appelle ton contrôle mais ne redirige pas.

Si tu veux vraiment faire les choses biens, il faut que tu crée un contrôleur frontal qui sera toujours appelé par ton index. Et c'est lui qui s'occupera de la gestion de tes pseudo-frames appelant au passage le contrôleur et l'action adéquates.
Ton index.php n'est censé que servir de point d'entrée et initialiser éventuellement ton application (si tu n'utilises pas un autre fichier pour ça). Il appelle ensuite le contrôleur (dans le cas que je propose, ce sera le frontal).
Je me demande donc pas comment envoyer les variables au contrôleur.
Si tu travailles en objet, il faudra passer les valeurs à ton objet (où l'initialiser avec ces valeurs). Dans le cas évoqué par xTG, tu n'as effectivement pas à te soucier de ta variable. Il faut que tu imagines l'utilisation de l'include comme un ajout du code php du fichier inclus.

Re: MVC, index.php et variables GET

par xTG » 21 févr. 2012, 22:34

Toute variable définie avant la pseudo-frame est disponible dans la pseudo-frame.

Exemple :
//index.php
$maVar = 1;
include('page.php');

//page.php
echo $maVar; // affichera 1

Re: MVC, index.php et variables GET

par mrmra » 21 févr. 2012, 22:16

Oui je veux bien parler de pseudo frames (je ne connaissais pas le terme). C'est donc ma page index.php qui redirige vers mon contrôleur n'est ce pas ? Je me demande donc pas comment envoyer les variables au contrôleur.

Re: MVC, index.php et variables GET

par xTG » 21 févr. 2012, 21:02

Qui redirige ???? :shock:
Tu veux pas plutôt parler de pseudo-frames ?

Car je vois pas l'intérêt de faire un contrôleur qui redirige vers une autre page servant de vue, on perd de ce fait tout ce qu'à fait le contrôleur...

MVC, index.php et variables GET

par mrmra » 21 févr. 2012, 20:56

Bonjour,

J'essaye de m'initier au model MVC mais je n'arrive pas a comprendre comment passer les variables GET en passant par le fichier index.php. Je m'explique :
Habituellement je fais passer mes variables de cette façon : http://www.monsite.com/mapage.php?varia ... iable2=bli

Mais avec le model MVC je passe par la page index.php?page=mapage qui ensuite redirige vers page.php. Je me demande donc comment je fais pour passer les variables GET et même POST de cette façon ?? Merci :)