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 :

Problème de contrôleur


Sujet :

MVC PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Par défaut Problème de contrôleur
    Salut à tous.
    Je viens de me mettre à Zend Framework. J'ai fais pas mal de tuto, et j'ai compris en gros comment ca fonctionné.
    Par contre la j'ai un soucis avec un controleur.
    Voici le code source:
    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
    <?php
     
    Zend::loadClass('Zend_Controller_Action');
     
    class ViewController extends Zend_Controller_Action 
    {
     
        public function viewAction()
        {
            $db = Zend::registry('db');
            $view = Zend::registry('view');
            $view->news = $db->getSeries();
            echo $view->render('view.php');
        }
     
        public function noRouteAction()
        {
            $this->_redirect('/');
        }
    }
    ?>
    Quand je lance mon application en tapant l'adresse suivante: http://localhost/view
    j'ai le message suivant qui s'affiche:
    Fatal error: Class ViewController contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Zend_Controller_Action::indexAction) in www\app\controllers\ViewController.php on line 21
    Voila mon probleme, si quelqu'un pouvait m'aider
    Merci

  2. #2
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Salut

    Rien de grave, le message dit simplement que tu as une méthode abstraite (déclarée mais non définie : elle a un nom et des paramètres mais pas de code). C'est généralement dû à l'héritage d'une classe abstraite ou à l'implémentation d'une interface.

    Bref, la solution est de donner un corps à la méthode indiquée, soit indexAction. Sans cela, PHP ne te laissera pas créer d'objet de cette classe.

    Tu trouveras sans doute de plus amples informations à cette adresse, si tu en as besoin :
    http://general.developpez.com/cours/

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2006
    Messages : 23
    Par défaut
    Merci bien

  4. #4
    Invité de passage
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1
    Par défaut
    Salut à tous,

    En reprenant le même exemple de fredangel, dans sa view correspondant a son ViewController c'est à dire view.php

    Comment recupérer le contenu de $view->news dans view.php?

    Est-on obligé de faire un :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $view = Zend::registry('view');
    $view->news
    ?

    Merki

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 63
    Par défaut
    Salut,
    Dans l'exemple de fredangel, $view->news sera une liste.
    Dans sa page view.php, afin de lire son $view->news il devra faire un foreach
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php foreach($this->news as $var)
      echo '$var;?>
    Cordialement Verboz

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

Discussions similaires

  1. Arguments pour et contre Access ?
    Par bottura dans le forum Sondages et Débats
    Réponses: 240
    Dernier message: 23/03/2018, 23h25
  2. Protéger une disquette contre la copie
    Par benzaza dans le forum Assembleur
    Réponses: 20
    Dernier message: 16/01/2005, 10h42
  3. Web contre client/serveur que choisir??
    Par silvermoon dans le forum Débats sur le développement - Le Best Of
    Réponses: 41
    Dernier message: 24/01/2004, 15h53
  4. Algo "Contre l'ordinateur"
    Par Black-Ghost dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 15/10/2002, 10h55
  5. ListView->Items->Clear() !!! Qques probl de perf
    Par Nicolas_a69 dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/08/2002, 11h49

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