Bonjour tous le monde, je reçois le message suivant et je n'arrive pas à situer ou se trouve exactement le probleme.
Dans Dispatcher.php :
<?php
class Dispatcher{
public $request;
function __construct(){
$this->request = new Request();
Router::parse($this->request->url,$this->request);
$controller = $this->loadController();
$controller->view();
}
function loadController(){
$name = ucfirst($this->request->controller).'Controller';
$file = ROOT.DS.'controller'.DS.$name.'.php';
require $file;
$controller = new $name($this->request);
}
}
?>
le message d'erreur est le suivant:
Fatal error: Call to a member function view() on a non-object in M:\EasyPHP-5.3.9\www\core\Dispatcher.php on line 8
Merci d'avance.

2 réponses


RedaElkhayat
Réponse acceptée

Salut, tu n'a pas fais le return du l'objet dans ta fonction loadController

function loadController(){
$name = ucfirst($this->request->controller).'Controller';
$file = ROOT.DS.'controller'.DS.$name.'.php';
require $file;
$controller = new $name($this->request);
return $controller; // voilà
}
Mikabe
Auteur

Merci beaucoup RedaElkhayat, effectivement j'ai oublié de faire un return dans lodController.