TinyButStrong - the PHP Template Engine
Categories > TinyButStrong general (FR) >

mergeblock pas accessible sous template

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs

By: loximose
Date: 2014-03-26
Time: 16:21

mergeblock pas accessible sous template

Bonjour,
Désolé par avance pour ma question qui doit être stupide, mais je ne trouve aucune réponse lors de mes recherches

J'ai un index.php qui déclare mon TBS et charge mon template index.htm de cette manière :

$TBS = new clsTinyButStrong;
$TBS->LoadTemplate('PAGES/index.htm','UTF-8');

à l'intérieur de mon index.php, j'execute une requete sql, et créer un mergeblock :

---------------------
$array_type1 = array('France'=>33, 'England'=>44, 'Spain'=>34, 'Italy'=>39, 'Deutchland'=>49);
$all_array['type1'] = $array_type1;
 
$TBS->MergeBlock('blk1',$array_type1); 

-----------------------

Quand je charge mon fichier index.htm, le template, il est composé comme cela :

[onshow;file='header.htm';getbody]
[onshow;file='accueil.htm';subtpl;getpart=body;]
[onshow;file='footer.htm';getbody]

Seulement, la page accueil.htm est censé récupérer le mergeBlock et l'afficher, mais rien à faire il refuse, et affiche le block comme un champ "string"

accueil.htm :

    <div style="border:1px solid #000">
        [blk1.key;block=div]
    </div>

le block "blk1", si je le met dans "index.htm", m'affiche correctement mon tableau de résultat. Et si j'essaie de passer simplement une variable dans accueil.htm, elle est interprétée..

alors, à quel niveau est-ce que je fais une erreur ??

merci par avance !!

By: Skrol29
Date: 2014-03-26
Time: 22:49

Re: mergeblock pas accessible sous template

Salut,

Remplace ts [onshow] par [onload].
Les champs automatiques [onshow] sont fusionnés pendant le Shwo(), donc forcément après tout les MergeBlock().
Alors que les [onload] sont fusionnés pendant le LoadTemplate().