Warning: require(C:\wamp\www\Site\view\page\index.php): failed to open stream: No such file or directory in C:\wamp\www\Site\Core\Controller.php on line 17
page controller:
<?php
class Controller{
public $request;
public $vars= array( );
public $layot='default';
function __construct($request){
$this->request=$request;

}

public function render($view)
{
extract($this->vars);
$view= ROOT.DS.'view'.DS.$this->request->controller.DS.$view.'.php';

ob_start();
require ($view);
$content_for_layot=ob_get_clean();
require ROOT.DS.'view'.DS.'layot'.DS.$this->layot.'default.php';

}
public function set($key ,$value=null){
if(is_array($key)){

$this->vars +=$key;
}else{
$this->vars$key]=$value;

}

}

}

?>

//pagecontroller
<?php
class PageController extends Controller{

function view($nom){
$this->set('phrase','Bienvenu a la page '.$nom);

$this->render('index');
}

}
?>

aidez moi svp

7 réponses


Ramzz1994
Réponse acceptée

tape ceci dans l'url et regardes tes fichiers :
localhost/Site/pages/index

aucun réponse :p

Normal l'erreur parle d'elle même tu fais un render dans la vue view, la fonction render permet d'aller chercher un fichier dans le dossier view. En faisant un render dans la fonction view tu cherches le fichier viewindex.php qui se trouve dans le dossier pages du dossier view le problème c'est que viewindex.php n'existe pas donc l'inclusion te retourne une erreur...

« Page » avec un « s » peut-être ? :-)

Warning: require(C:\wamp\www\Site\<u>view\page\</u>index.php): failed to open stream: No such file or directory in C:\wamp\www\Site\Core\Controller.php on line 17

C'est normal que s'il n'y a pas de dossier « page » dans le dossier « view », il te sorte une erreur. D'ailleurs tu verras plus loin dans le tutoriel comment réparer ce genre d'erreur.

Ramz.

plus détaillé svp

Mieux parler stp !
On est pas là pour te donner du code précuit ou quoique ce soit mais pour t'aider à comprendre tes erreurs sinon cela ne rime à rien. Donc renomme le Controller si tu as un dossier pages dans le dossier view ou bien regarde si la vue existe bien ce qui semble être ça le problème enlèves l'appel à fonction render dans ta fonction view du Controller Page.

il y a des personnes qui sont téléchargé les fichiers sources de tuto et qui ont la meme error
voici mon racine :