Bonjours,
j'ai suivi le tuto proposé sur developpez.com (merci Adrien Pellegrini) suivant :
http://a-pellegrini.developpez.com/t...php/templates/
Qui est bien fait dans l'emsemble (pour ma part y un détail que j'ai pas compris j'y reveindrais aprés l'explication de mon probléme).
j'obtient l'erreur:
Mais je ne comprend pas pourquoi cette erreur.Notice: Undefined index: menu in template.php on line 58.
ci-join les fichier en cause, le fichier index.htm est nommée index.tpl sur mon serveur (developpez.com n'accepte pas les fichier tpl).
Si quelqu'un pourrait m'expliquer pour corriger, d'où ça vient j'en lui serai reconnaissant.
Sinon là où je suis pas sur d'avoir bien suivi c'est au chapitre 4 : Méthode(s) supplémentaire(s).
Pour moi il faut remplacer :
par :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 ligne 76: foreach ($info[$i] as $constant => $data) { // Remplace {CONSTANTE} par les donneés correspondantes // et mets jour le code HTML du fichier test.tpl // stock dans $this->page $data = (file_exists($data)) ? $this->includeFile($data) : $data; $this->page = preg_replace('`{'.$constant.'}`', $data, $this->page); } ... ligne 134 : foreach($info[$i] as $constant => $data) { $data = (file_exists($data)) ? $this->includeFile($data) : $data;; $blockTag = preg_replace('`{'.$type.'.'.$constant.'}`', $data, $blockTag); }
et rajouter :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 ligne 76 foreach ($info[$i] as $constant => $data) { // Remplace {CONSTANTE} par les donneés correspondantes // et mets jour le code HTML du fichier test.tpl // stock dans $this->page $data = (file_exists($data)) ? $this->includeFile($data) : $data; $this->page = preg_replace('`{'.$constant.'}`', $data, $this->page); // Si $data est un fichier $data = (file_exists($data)) ? $this->includeFile($data) : $data; $this->page = preg_replace('`{'.$constant.'}`', $data, $this->page); } ... ligne 137 (anciennement 134) : foreach($info[$i] as $constant => $data) { $data = (file_exists($data)) ? $this->includeFile($data) : $data;; $blockTag = preg_replace('`{'.$type.'.'.$constant.'}`', $data, $blockTag); }
avant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function includeFile ($file) { // Enclenche la temporisation de sortie ob_start(); include $file; // Enregistre le contenu du tampon de sortie $buffer = ob_get_contents(); // Efface le contenu du tampon de sortie ob_clean(); // Retourne les données enregistrées return $buffer; }Ai-je bon ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function constantReplace() { ...
Et une question me tarlupinne, avec ce script comment je peut faire pour avoir des affichages conditionnels de block genre formulaire de connexion ou un lien vers son profil suivant si on est connecter ou pas?
Merci a vous d'avoir consacré un peu de temps a lire ce pavé, et j'éspere avoir été assez claire dans mes explications vaseuses.
Partager