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 :

Problème fonction call_user_func_array()


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 338
    Par défaut Problème fonction call_user_func_array()
    Bonjour,

    Je débute en php 5 est j'ai un petit soucis avec monde code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    call_user_func_array(array($controlleur, $this->request->action), $this->request->params);
    L'erreur :
    Warning: call_user_func_array() expects parameter 1 to be a valid callback, class 'Pagescontrolleur' does not have a method 'index' in C:\wamp\www\site\Corps\dispatcher.php on line 13
    Voici ma Pagecontrolleur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    class Pagescontrolleur extends Controlleur{
        function Vue($nom){
           echo 'Vous avez demandé la page !'.$nom;
        }
    }
    Mais je pense que le probleme vient de ma page Request :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class Request{
    public $url; //URL appelé par l'utilisateur
        public $params = "";
     
        function __construct(){
            /* @var $_SERVER <type> */
            $this->url = isset($_SERVER['PATH_INFO'])  ;
           // $this->url = $_SERVER['PATH_INFO'];
        }
    }
    Car j'ai eu des problèmes avec $_SERVER['PATH_INFO'] qui n'était pas reconnu donc j'ai mi un isset mais je ne pense pas que sa fonctionne correctement.

  2. #2
    Expert confirmé

    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
    Par défaut
    class 'Pagescontrolleur' does not have a method 'index'
    , t'as que une methode Vue, montre la classe du controller

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 338
    Par défaut
    J'ai rien dans ma page controlleur.
    le mot index vient de ma page routeur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class Routeur{
        //Permet de parser une url @param $url url a parser @return tableau contenant les paramétres
        static function parse($url, $request){
            $url = trim($url, '/');
            $params = explode('/',$url);
            $request ->controlleur = $params[0];
            $request ->action = isset($params[1]) ? $params[1] : 'index';
            $request ->params[]= array_slice($params, 2);
     
            return true;
        }
    }

  4. #4
    Expert confirmé

    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
    Par défaut
    montre ta classe Controlleur

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    338
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 338
    Par défaut
    Il y a rien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    class Controlleur{
     
    }

  6. #6
    Expert confirmé

    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
    Par défaut
    ajoute une méthode index dans ta classe

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

Discussions similaires

  1. Problème : Fonctions et commande Execute
    Par bubi dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 15/11/2005, 12h01
  2. Problème fonction SDL
    Par seeme dans le forum SDL
    Réponses: 2
    Dernier message: 06/11/2005, 21h22
  3. Problème fonction PL/SQL
    Par SSJ17Vegeta dans le forum PL/SQL
    Réponses: 2
    Dernier message: 29/10/2005, 22h14
  4. Problème fonction et trigger sous 7.2
    Par anoukhan dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/06/2005, 23h53
  5. Réponses: 2
    Dernier message: 20/08/2004, 18h10

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