Probleme au niveau deDevelopper un site le 2 Jour

Par al.simmons, il y a 13 ans


Salut a tous voila j'ai décider de faire les tutos sur Développer un site mais a peine commencer je bloque sur le 2 jour

Voila l'erreur tout fonctionner aprés avoir creer la fonction :function loadController a la 28e min cela m'affiche:

Warning: require(C:\wamp\www\tuto\site\controller\Controller.php) [function.require]: failed to open stream: No such file or directory in C:\wamp\www\tuto\site\core\Dispatcher.php on line 22

voici mon includes.php

<?php 
require 'Request.php';
require 'Router.php';
require 'Controller.php';
require 'Dispatcher.php';

Le dispatcher.php

<?php
/**
* Dispatcher
* Permet de charger le controller en fonction de la requête utilisateur
**/
class Dispatcher {
    var $request;
    /**
    * Fonction principale du dispatcher
    * Charge le controller en fonction du routing
    **/
    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);
        }
}

ainsi que PagesController.php

<?php
class PagesController extends Controller{
    function view(){
        echo 'Vous voyez?';
    }

}

Et oui j'en suis que la je prend mon temps et j'ai envie de comprendre :-)
voila si quelqu'n peut m'aide rmerci

en cherchant dans le forum j'ai vu que la question a etait poser Ancienne reponse
mais je l'a comprend pas

11 réponses

al.simmons, il y a 13 ans

merci de ta reponse mais le probleme ne change pas

Warning: require(C:\wamp\www\tuto\site\core\controller\Controller.php) [function.require]: failed to open stream: No such file or directory in C:\wamp\www\tuto\site\core\Dispatcher.php on line 22
al.simmons, il y a 13 ans

non toujours pas il m'affiche toujours

Warning: require(C:\wamp\www\tuto\site\controller\ControllerController.php) [function.require]: failed to open stream: No such file or directory in C:\wamp\www\tuto\site\core\Dispatcher.php on line 22
RedaElkhayat, il y a 13 ans

laisser ton code comme ça

$file = ROOT.DS.'controller'.DS.$name.'.php';

le probléme vient de l'url
http://localhost/tuto/site/ pages / view

al.simmons, il y a 13 ans

attend j'essaie de modifier l'url

al.simmons, il y a 13 ans

peut tu m'en dire plus je n'avais pas de fichier page je viens d'en cree un et inseree le fichier view dedans mais le probleme persiste

RedaElkhayat, il y a 13 ans

Continue le tutoriel, ils restent plein de choses pour avoir afficher ta page.

al.simmons, il y a 13 ans

je transmet l'url dans laquelle tombe le message d'erreur:

http://localhost/tuto/site/

ainsi que mon fichier webroot/index

<?php
        define('WEBROOT',dirname( __FILE__ )); 
        define('ROOT',dirname(WEBROOT)); 
        define('DS',DIRECTORY_SEPARATOR);
        define('CORE',ROOT.DS.'core'); 
        define('BASE_URL',dirname(dirname($_SERVER'SCRIPT_NAME'])));

        require CORE.DS.'includes.php';
        new Dispatcher();
        ?>

Voila,j'espere avoir tout dit
Merci de votre aide

RedaElkhayat, il y a 13 ans

aussi tu doit indiquer a ton système le Controller et l'action que tu veux qu'il faire.
localhost/tuto/site/ici le nom du controller/ici le nom de l'action

al.simmons, il y a 13 ans

voici comment est composer mon fichier:
tuto:
|_site
|___controller/PagesController.php
|___core/Controller.php/Dispatcher.php/includes.php/Request.php/Router.php
|___model
|___pages/view
|__webroot/js/img/css/.htaccess/index.php
|__.htaccess

voila si cela vient de l'url ?????

RedaElkhayat, il y a 13 ans

oui l'erreur vient toujours de l'url, si tu fait seulement localhost/tuto/site/
le Dispatcher ne sait rien de l'url.

al.simmons, il y a 13 ans

c'est vrai RedaElkhayat je tombe tout le temps sur localhost/tuto/site/ voila comment puis je resoudre ce probleme au niveau du Dispatcher et pourquoi? j'ai biens suivi le tuto