Bonsoir,

J'ai cette erreur au niveau du dispatcher.php:
PHP Warning: call_user_func_array() expects parameter 1 to be a valid callback, first array member is not a valid class name or object in /Applications/MAMP/htdocs/Site-admin-php/core/Dispatcher.php on line 10

si une personne peut m'aider je ne comprends pas ?
merci
voici le code :

<?php
class Dispatcher{

    var $request;

    function __construct(){
        $this->request = new Request();
        Router::parse($this->request->url,$this->request);
        $controller = $this->loadController();
        call_user_func_array(array($controller,$this->request->action),$this->request->params);
    }
    function loadController(){
        $name = ucfirst($this->request->controller).'Controller';
        $file = ROOT.DS.'controller'.DS.$name.'.php';
        require $file;
        new $name($this->request);
    }

}

?>

2 réponses


Balbert
Réponse acceptée

Bonsoir

Vous avez oublié le retourne dans la fonction loadcontroller

Bonjour
essayez ca :

<?php
class Dispatcher{

    var $request;

    function __construct(){
        $this->request = new Request();
        Router::parse($this->request->url,$this->request);
        $controller = $this->loadController();
        call_user_func_array(array($controller,$this->request->action),$this->request->params);
    }
    function loadController(){
        $name = ucfirst($this->request->controller).'Controller';
        $file = ROOT.DS.'controller'.DS.$name.'.php';
        require $file;
       $controller = new $name($this->request);
       return $controller;
    }

}

?>