Smarty Forum Index Smarty
WARNING: All discussion is moving to https://reddit.com/r/smarty, please go there! This forum will be closing soon.

{include file="$var"} ne fonctionne pas

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Smarty Forum Index -> Language: French
View previous topic :: View next topic  
Author Message
anardil
Smarty n00b


Joined: 02 Jun 2007
Posts: 1

PostPosted: Sat Jun 02, 2007 9:20 pm    Post subject: {include file="$var"} ne fonctionne pas Reply with quote

Bonsoir tout le monde.

Voila j'utilise le moteur SMARTY.

Je vous donne un bout de mon code pour expliquer mon souci

Code : Smarty

#index.php

/*pour tester j'initialise la variable $file en dur*/
$file = 'main.tpl';

$smarty = new Smarty() ;
$smarty -> compile_check = true;
$smarty -> compile_dir = _ROOT_DIR."/templates_c" ;
$smarty -> template_dir = _TEMPLATES_DIR;
$smarty -> assign('file', $file);
$smarty -> display('index.tpl');




Code : HTML

<!-- index.tpl -->

{include file='$file'}


Teste tout bête mais qui ne fonctionne pas.
Cela me met comme erreur :
Citation

Warning: Smarty error: unable to read resource: "$file" in C:\wamp\www\*******\lib\smarty\Smarty.class.php on line 1095


Par contre si dans le template je met {include file='main.tpl'} ça marche très bien !!! Mais je veux que le contenu soit dynamique. Comment cela se fait que $file n'est pas remplacé par sa valeur dans le template????? o_O

Si quelqu'un a un élément de réponse se serait sympa car là ça fait des heures que je cherche sur le web et je ne trouve pas :colere2:

Merci d'avance Smile
Back to top
View user's profile Send private message
Sweat
Smarty n00b


Joined: 02 Dec 2006
Posts: 4

PostPosted: Sun Jun 03, 2007 2:29 pm    Post subject: Reply with quote

Salut,

j'avais la même erreur y a pas peu de temps, mais en fait, c'est comment en PHP, si tu fais :
Code:
$val= 'main.tpl';
echo "Première assertion : " . ('$val' == 'main.tpl')? " Vraie " : " Fausse "; // '$val' == 'main.tpl'
echo "Seconde asserion : " .  ("$val" == 'main.tpl')? " Vraie " : " Fausse "; // 'main.tpl' == 'main.tpl'


C'est juste que si tu mets des simples quotes autour de ta variable, son contenu ne sera pas exprimé...

En gros, pour résumer, mets des double-quotes dans ton include et ça marchera, enfin ça vaut pour tout Wink

++
Back to top
View user's profile Send private message
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    Smarty Forum Index -> Language: French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group
Protected by Anti-Spam ACP