Categories > TinyButStrong general (FR) >

Tableaux multidimensionnels

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: Daniel
Date: 2006-07-03
Time: 23:06

Tableaux multidimensionnels

bonjours, est-il possible d'afficher 1 tableau multidimensionnel avec TBS ?

Par exemple pour 1 agenda j'ai à afficher :

$tb_rdv = array('Lundi' => array( 8 => 'rdv 1', 9 => 'rdv 2'), 'Mardi' => array( 10 => 'rdv 3 ', 11 => 'rdv 4'));

si je fais 1 mergeblock avec ce tableau, comment acceder aux champs ?

Merci ^^
By: Skrol29
Date: 2006-07-04
Time: 11:26

Re: Tableaux multidimensionnels

Salut,

MergeBlock() fusionne des données organisée en "table", c'est à dire dont le nom de colonnes est connu. Si tes indexes 8, 9, 10 , 11... peuvent augmenter sans s'arrêter alors tu ne peux pas prévoir leu nom, donc tu ne pourras pas les afficher.
Par contre je pense que tu peux t'en tirer un bloc + sous-bloc.
Un premier bloc pour fusionner Lundi/Mardi/... et un sous bloc pour fusionner les RdV de chaque journée.
By: Daniel
Date: 2006-07-04
Time: 15:50

Re: Tableaux multidimensionnels

je comprendrais mieux avec un p'tit exemple si possible.
By: Skrol29
Date: 2006-07-04
Time: 16:35

Re: Tableaux multidimensionnels

Exemple avec ton tableau $tb_rdv:

HTML:
<div>
  [jour.$;block=div]
  <div>
  [rdv.val;block=div;p1=[jour.$]]
  </div>
</div>

PHP:
$TBS->MergeBlock('jour',$tb_rdv);
$TBS->MergeBlock('rdv','array';'tb_rdv[%p1%]');

Le champ [jour.$] affiche la clé de chaque item de la liste $tb_rdv.
Le bloc "rdv" est fusionné en mode sous-bloc grâce au paramètre "p1".
la chaîne 'tb_rdv[%p1%]' est une requete "tableau" reconnue par TBS qui va retourner le contenu de $tbsrdv[Lundi], $tbsrdv[Mardi], ...
Le champ [rdv.val] affiche la valeur de chaque item de ce contenu.