Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/01/2011, 20h06   #1
Nouveau Membre du Club
 
Inscription : septembre 2005
Messages : 51
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 51
Points : 31
Points : 31
Par défaut Maitre - détails en MVC

Bonsoir à tous,

Si j'ai différents enregistrements maîtres, chacun avec leurs enregistrements détails, comment faire pour passer les datas du modèle vers la vue pour être conforme au pattern MVC??? Via des tableaux liés, ... ??? Je ne vois vraiment pas

Merci d'avance.
Pero est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 20h42   #2
Membre du Club
 
Jean Frederic Nault
Inscription : juillet 2010
Messages : 61
Détails du profil
Informations personnelles :
Nom : Jean Frederic Nault

Informations forums :
Inscription : juillet 2010
Messages : 61
Points : 59
Points : 59
Utilise tu un framework php, et comprend (as tu deja utiliser) le pattern mvc car ta question est vraiment vague?
nault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2011, 12h38   #3
Invité régulier
 
Inscription : juin 2010
Messages : 61
Détails du profil
Informations personnelles :
Âge : 23

Informations forums :
Inscription : juin 2010
Messages : 61
Points : 7
Points : 7
Envoyer un message via MSN à andaman
Pour cela en MVC je fais un tableau comme ceci:

page principale
Code :
1
2
3
4
5
6
7
8
9
 
if(isset($_SESSION['login'])){
		if (isset($_GET['section']) && in_array($_GET['section'], $sections)){
			include('mod/' . $_GET['section'] . '.inc.php');
		}else{
			include('tools/menu.php');
			include('views/quickstats.inc.php');
		}
	}
andaman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2011, 13h03   #4
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 984
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 984
Points : 5 015
Points : 5 015
Pour passer les données d'un contrôlleur (chargé des interraction utilisateur > métier > modèle) vers les vues (chargées de l'affichage), tu doit utiliser un registre capable de faire quelque chose comme ça:
Code :
1
2
3
4
5
6
7
8
9
10
11
 
class MonControlleur extends BaseController
{
   public function uneRubrique ()
   {
        $obj1 = ClassMetier::vaChercher();
        $obj2 = ClassMetier::vaChercherAutreChose();
        $this->registry->add($obj1, $obj2);
        ViewManager::setRegistry($this->registry)->load("mapage.php");
   }
}
Ce registre est généralement un object hérité de ArrayObject (http://php.net/manual/en/class.arrayobject.php) qui est passé dans tout le cycle d'une requête (du routeur au gestionnaire de vues en passant par tout les contrôlleurs nécéssaires). Ce registre peut être soit porté en tant qu'attribut de classe ou d'objet par tous les intervenants ou être un singleton (à toi de voir ce qui te va le mieux).

Il y a sur developpez.com de nombreux exemples qui illustrent le rôle du registre dans le design pattern MVC, fais donc quelques recherches.
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h10.


 
 
 
 
Partenaires

Hébergement Web