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

Langage PHP Discussion :

Utiliser un objet dans une vue [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 42
    Points : 30
    Points
    30
    Par défaut Utiliser un objet dans une vue
    Bonsoir,

    Mon "routeur" instancie test_model et lance mon fichier /views/test/méthode.php.

    Pour mes testes, j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    class Test2_model
    {     
    	function __construct()
    	{
    		echo "model de test2 construit </br>"; 
    		$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
    	        $test2 = json_decode($json);    
             	echo $test2->a;
    	}
     
    }
    à l'intérieur de la classe, $test2->a donne bien le résultat attendu.
    Par contre, dans mon fichier template:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	<h3><?php echo $test2->a ;?></h3>
    ne donne rien.

    ça me semble logique, mais je ne trouve pas la manière de faire.

    Merci
    Ju

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    comment ton controller envoie les données a ta vue ?


    ps : c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public function __construct()

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 42
    Points : 30
    Points
    30
    Par défaut
    Merci

    Citation Envoyé par stealth35 Voir le message
    comment ton controller envoie les données a ta vue ?
    Je teste mon routeur d'URL . Là je suis dans le cas l'hypothèse où je n'ai pas de contrôleur de test2 mais une vue et un modèle:

    Pour info, la méthode de mon router qui se charge du dispatching (version temporaire):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    	public static function dispatch($object,$action) {
    	        if (file_exists('appli/models/'.$object.'_model.php'))
    	        {
     
    	                include 'appli/models/'.$object.'_model.php';
    	               	$model_class = $object."_model";    
    		        		  $model = new $model_class();
    	        }
    	        if (file_exists('appli/controllers/'.$object.'_controller.php'))
    	        {
     
    	                include 'appli/controllers/'.$object.'_controller.php'; 
    		        			$controller_class = $object."_controller";    
    		        			$controller = new $controller_class();	                
    	        }
    	        elseif (file_exists('appli/views/'.$object.'/'.$action.'.php'))
    	        {
     
    	                include 'appli/views/'.$object.'/'.$action.'.php' ;	                
    	        }
    	        else
    	        {
     
    	                echo 'rien à faire ici';
    	        }
     
    	}

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    va falloir faire un extract a un moment donnée

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 42
    Points : 30
    Points
    30
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    va falloir faire un extract a un moment donnée
    Ok merci je vais bouquiner ça.

    Mais je ne comprends pas pourquoi il n'est pas possible d'accéder aux propriétés de mon objet.

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par leccux Voir le message
    Ok merci je vais bouquiner ça.

    Mais je ne comprends pas pourquoi il n'est pas possible d'accéder aux propriétés de mon objet.
    parce que $test2 n'existe que dans le scope de le methode __construct

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

Discussions similaires

  1. utilisation d'objet dans une class
    Par turican2 dans le forum Langage
    Réponses: 4
    Dernier message: 19/02/2009, 15h43
  2. Utilisation d'un 'record' dans une vue
    Par olof dans le forum SQL
    Réponses: 27
    Dernier message: 03/04/2008, 18h29
  3. Réponses: 23
    Dernier message: 21/02/2007, 12h53
  4. Utiliser des objets SWING dans une vue RCP
    Par manuga72 dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 20/10/2006, 17h26
  5. [delphi 5,6,7] utiliser un objet dans une procédure
    Par wizdom dans le forum Langage
    Réponses: 3
    Dernier message: 27/01/2006, 15h38

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